Systems and methods for modeling and controlling building equipment

ABSTRACT

A system comprising one or more memory devices having instructions stored thereon that, when executed by one or more processors, cause the one or more processors to perform operations comprising receiving a request for a rating for a device of building equipment, the request for the rating including a plurality of attributes characterizing the device of building equipment including at least a first device characteristic, selecting, from a plurality of rating engines, a first rating engine for use in generating the rating based on the plurality of attributes characterizing the device of building equipment, communicating the first device characteristic to the first rating engine, receiving a first rating for the device of building equipment from the first rating engine, and using the first rating to at least one of generate a predictive model for the device of building equipment or control the device of building equipment.

BACKGROUND

The present disclosure relates generally to a web services system, andmore particularly to a web services system configured to provide deviceratings that may be used to generate a predictive model.

A chiller is an apparatus that is used to generate temperaturecontrolled water, most often cooled water, which can be used to coolair, products, machines, etc. Chillers have become increasingly complexover time due to, for example, advances in different types of chillers(e.g., air chillers, water chillers, centrifugal chillers, etc.),technological improvements to component parts (e.g., compressors, drivelines, motors, etc.), changes in chiller sizes, etc. Thus, it has becomeincreasingly difficult to determine the components and/or properties ofa chiller that best suit customers' needs. For example, differentchillers (and/or components) may better suit a customers' needs based onthe desired chiller location, chiller type, power consumption, etc. Itwould be beneficial to have a system and/or method for quickly providingchiller ratings based on a customer's desired characteristics of achiller.

SUMMARY

One implementation of the present disclosure is system for modeling andcontrolling building equipment, the system comprising one or more memorydevices having instructions stored thereon that, when executed by one ormore processors, cause the one or more processors to perform operationscomprising obtaining a device profile for a device of buildingequipment, the device profile including a plurality of attributescharacterizing the device of building equipment including at least afirst device characteristic, selecting, from a plurality of ratingengines, a first rating engine for use in generating the rating based onthe plurality of attributes characterizing the device of buildingequipment, communicating the first device characteristic to the firstrating engine, receiving a first rating for the device of buildingequipment from the first rating engine, and using the first rating to atleast one of generate a predictive model for the device of buildingequipment or control the device of building equipment.

In some embodiments, the operations further comprise obtaining thedevice profile for the device of building equipment, the device profileincluding a second device characteristic, selecting, from the pluralityof rating engines, a second rating engine for use in generating a secondrating based on the plurality of attributes characterizing the device ofbuilding equipment, communicating the second device characteristic tothe second rating engine, receiving the second rating for the device ofbuilding equipment from the second rating engine, and using the secondrating to at least one of generate the predictive model for the deviceof building equipment or control the device of building equipment.

In some embodiments, communicating the first device characteristic tothe first rating engine and the second device characteristic to thesecond rating engine occurs asynchronously, and wherein the first ratingengine and the second rating engine are different rating engines.

In some embodiments, communicating the first device characteristic tothe first rating engine and the second device characteristic to thesecond rating engine occurs in series, and wherein the first ratingengine and the second rating engine are the same rating engine.

In some embodiments, the operations further comprise communicating thefirst rating to a device ratings database, wherein the device ratingsdatabase is configured to store a plurality of ratings.

In some embodiments, the operations further comprise communicating theplurality of attributes characterizing the device of building equipmentand the first device characteristic to a database, wherein the databaseis configured to store the plurality of attributes characterizing thedevice of building equipment and a plurality of device characteristics.

In some embodiments, the device profile includes a third devicecharacteristic, and wherein the operations further comprise determiningthe third device characteristic is stored in a database, and receiving,from the database, a third device rating based on the third devicecharacteristic.

In some embodiments, the plurality of attributes characterizing thedevice of building equipment comprises at least one of a device familytype, a device location, or a device configuration.

In some embodiments, the first rating comprises at least one of a devicepower consumption, a device performance metric, or a device flow metric.

In some embodiments, the operations further comprise providing the firstrating to a user via a user interface.

Another implementation of the present disclosure is a method formodeling and controlling building equipment, the method comprisingobtaining a device profile for a device of building equipment, thedevice profile including a plurality of attributes characterizing thedevice of building equipment including at least a first devicecharacteristic, selecting, from a plurality of rating engines, a firstrating engine for use in generating the rating based on the plurality ofattributes characterizing the device of building equipment,communicating the first device characteristic to the first ratingengine, receiving a first rating for the device of building equipmentfrom the first rating engine, and using the first rating to at least oneof generate a predictive model for the device of building equipment orcontrol the device of building equipment.

In some embodiments, the method further comprises obtaining the deviceprofile for the device of building equipment, the device profileincluding a second device characteristic, selecting, from the pluralityof rating engines, a second rating engine for use in generating a secondrating based on the plurality of attributes characterizing the device ofbuilding equipment, communicating the second device characteristic tothe second rating engine, receiving the second rating for the device ofbuilding equipment from the second rating engine, and using the secondrating to at least one of generate the predictive model for the deviceof building equipment or control the device of building equipment.

In some embodiments, the method further comprises communicating thefirst device characteristic to the first rating engine and the seconddevice characteristic to the second rating engine asynchronously,wherein the first rating engine and the second rating engine aredifferent rating engines.

In some embodiments, the method further comprises communicating thefirst device characteristic to the first rating engine and the seconddevice characteristic to the second rating engine occurs in series,wherein the first rating engine and the second rating engine are thesame rating engine.

In some embodiments, the method further comprises communicating thefirst rating to a device ratings database, wherein the device ratingsdatabase is configured to store a plurality of ratings.

In some embodiments, the method further comprises communicating theplurality of attributes characterizing the device of building equipmentand the first device characteristic to a database, wherein the databaseis configured to store the plurality of attributes characterizing thedevice of building equipment and a plurality of device characteristics.

In some embodiments, the method further comprises determining a thirddevice characteristic is stored in a database, and receiving, from thedatabase, a third device rating based on the third devicecharacteristic, wherein the device profile includes the third devicecharacteristic.

In some embodiments, the method further comprises providing the firstrating to a user via a user interface.

Yet another implementation of the present disclosure is a non-transitorycomputer readable medium comprising instructions stored thereon that,when executed by one or more processors, cause the one or moreprocessors to obtain a device profile for a device of buildingequipment, the device profile including a plurality of attributescharacterizing the device of building equipment including at least afirst device characteristic, select, from a plurality of rating engines,a first rating engine for use in generating the rating based on theplurality of attributes characterizing the device of building equipment,communicate the first device characteristic to the first rating engine,receive a first rating for the device of building equipment from thefirst rating engine, and use the first rating to at least one ofgenerate a predictive model for the device of building equipment orcontrol the device of building equipment.

In some embodiments, the instructions further cause the one or moreprocessors to obtain the device profile for the device of buildingequipment, the device profile including a second device characteristic,select, from the plurality of rating engines, a second rating engine foruse in generating a second rating based on the plurality of attributescharacterizing the device of building equipment, communicate the seconddevice characteristic to the second rating engine, receive the secondrating for the device of building equipment from the second ratingengine, and use the second rating to at least one of generate thepredictive model for the device of building equipment or control thedevice of building equipment.

BRIEF DESCRIPTION OF THE DRAWINGS

Various objects, aspects, features, and advantages of the disclosurewill become more apparent and better understood by referring to thedetailed description taken in conjunction with the accompanyingdrawings, in which like reference characters identify correspondingelements throughout. In the drawings, like reference numbers generallyindicate identical, functionally similar, and/or structurally similarelements.

FIG. 1 is a drawing of a building equipped with a building managementsystem (BMS) and a HVAC system, according to some embodiments.

FIG. 2 is a schematic of a waterside system which can be used as part ofthe HVAC system of FIG. 1 , according to some embodiments.

FIG. 3 is a block diagram of an airside system which can be used as partof the HVAC system of FIG. 1 , according to some embodiments.

FIG. 4 is a block diagram of a BMS which can be used in the building ofFIG. 1 , according to some embodiments.

FIG. 5 is another block diagram of a BMS which can be used in thebuilding of FIG. 1 , according to some embodiments.

FIG. 6 is a block diagram of a web services system, according to someembodiments.

FIG. 7 is a block diagram of a ratings platform, according to someembodiments.

FIG. 8 is a flow diagram of an example process for providing a ratingfor building equipment, according to some embodiments.

FIG. 9 is a flow diagram of an example process for modeling andcontrolling building equipment, according to some embodiments.

DETAILED DESCRIPTION

Overview

Referring generally to the FIGURES, systems and methods for modeling andcontrolling building equipment are shown, according to variousembodiments. A ratings platform is a component of a web services systemthat provides device rating data, which can be used to generate apredictive model for a building equipment device and/or control thedevice. The ratings platform may receive desired device input data(e.g., a device profile as part of a device rating request, a devicerating request, etc.) from various sources (e.g., a user device, anetwork, a storage system, etc.), determine a device rating based on therating request (e.g., the device profile), and provide the device ratingto a user. In some cases, the ratings platform may receive a devicerating request that includes a plurality of input data (e.g., deviceattributes, characteristics, configurations, etc.), and determine aplurality of ratings based on the input data. In some cases, the ratingsplatform may be configured to receive a rating request (e.g., having aplurality of input data), and determine the plurality of device ratingsasynchronously. In other cases, the ratings platform may receive arating request (e.g., having a plurality of input data), and determine arating by determining sub-ratings in series. In yet other cases, theratings platform may receive a ratings request (e.g., having a pluralityof input data), and determine the device rating based on a set of storeddevice datasets and/or data subsets. In this regard, the ratingsplatform described herein is configured to provide a larger number ofdevice ratings at a more rapid speed, so as to optimize a user's time.In some cases, the ratings platform may be configured to receive arating request (e.g., having a plurality of input data), determine adevice rating, and control the device and/or other equipment around abuilding or a building area.

Building HVAC Systems and Building Management Systems

Referring now to FIGS. 1-5 , several building management systems (BMS)and HVAC systems in which the systems and methods of the presentdisclosure can be implemented are shown, according to some embodiments.In brief overview, FIG. 1 shows a building 10 equipped with a HVACsystem 100. FIG. 2 is a block diagram of a waterside system 200 whichcan be used to serve building 10. FIG. 3 is a block diagram of anairside system 300 which can be used to serve building 10. FIG. 4 is ablock diagram of a BMS which can be used to monitor and control building10. FIG. 5 is a block diagram of another BMS which can be used tomonitor and control building 10.

Building and HVAC System

Referring particularly to FIG. 1 , a perspective view of a building 10is shown. Building 10 is served by a BMS. A BMS is, in general, a systemof devices configured to control, monitor, and manage equipment in oraround a building or building area. A BMS can include, for example, aHVAC system, a security system, a lighting system, a fire alertingsystem, any other system that is capable of managing building functionsor devices, or any combination thereof.

The BMS that serves building 10 includes a HVAC system 100. HVAC system100 can include a plurality of HVAC devices (e.g., heaters, chillers,air handling units, pumps, fans, thermal energy storage, etc.)configured to provide heating, cooling, ventilation, or other servicesfor building 10. For example, HVAC system 100 is shown to include awaterside system 120 and an airside system 130. Waterside system 120 mayprovide a heated or chilled fluid to an air handling unit of airsidesystem 130. Airside system 130 may use the heated or chilled fluid toheat or cool an airflow provided to building 10. An exemplary watersidesystem and airside system which can be used in HVAC system 100 aredescribed in greater detail with reference to FIGS. 2-3 .

HVAC system 100 is shown to include a chiller 102, a boiler 104, and arooftop air handling unit (AHU) 106. Waterside system 120 may use boiler104 and chiller 102 to heat or cool a working fluid (e.g., water,glycol, etc.) and may circulate the working fluid to AHU 106. In variousembodiments, the HVAC devices of waterside system 120 can be located inor around building 10 (as shown in FIG. 1 ) or at an offsite locationsuch as a central plant (e.g., a chiller plant, a steam plant, a heatplant, etc.). The working fluid can be heated in boiler 104 or cooled inchiller 102, depending on whether heating or cooling is required inbuilding 10. Boiler 104 may add heat to the circulated fluid, forexample, by burning a combustible material (e.g., natural gas) or usingan electric heating element. Chiller 102 may place the circulated fluidin a heat exchange relationship with another fluid (e.g., a refrigerant)in a heat exchanger (e.g., an evaporator) to absorb heat from thecirculated fluid. The working fluid from chiller 102 and/or boiler 104can be transported to AHU 106 via piping 108.

AHU 106 may place the working fluid in a heat exchange relationship withan airflow passing through AHU 106 (e.g., via one or more stages ofcooling coils and/or heating coils). The airflow can be, for example,outside air, return air from within building 10, or a combination ofboth. AHU 106 may transfer heat between the airflow and the workingfluid to provide heating or cooling for the airflow. For example, AHU106 can include one or more fans or blowers configured to pass theairflow over or through a heat exchanger containing the working fluid.The working fluid may then return to chiller 102 or boiler 104 viapiping 110.

Airside system 130 may deliver the airflow supplied by AHU 106 (i.e.,the supply airflow) to building 10 via air supply ducts 112 and mayprovide return air from building 10 to AHU 106 via air return ducts 114.In some embodiments, airside system 130 includes multiple variable airvolume (VAV) units 116. For example, airside system 130 is shown toinclude a separate VAV unit 116 on each floor or zone of building 10.VAV units 116 can include dampers or other flow control elements thatcan be operated to control an amount of the supply airflow provided toindividual zones of building 10. In other embodiments, airside system130 delivers the supply airflow into one or more zones of building 10(e.g., via supply ducts 112) without using intermediate VAV units 116 orother flow control elements. AHU 106 can include various sensors (e.g.,temperature sensors, pressure sensors, etc.) configured to measureattributes of the supply airflow. AHU 106 may receive input from sensorslocated within AHU 106 and/or within the building zone and may adjustthe flow rate, temperature, or other attributes of the supply airflowthrough AHU 106 to achieve setpoint conditions for the building zone.

Waterside System

Referring now to FIG. 2 , a block diagram of a waterside system 200 isshown, according to some embodiments. In various embodiments, watersidesystem 200 may supplement or replace waterside system 120 in HVAC system100 or can be implemented separate from HVAC system 100. Whenimplemented in HVAC system 100, waterside system 200 can include asubset of the HVAC devices in HVAC system 100 (e.g., boiler 104, chiller102, pumps, valves, etc.) and may operate to supply a heated or chilledfluid to AHU 106. The HVAC devices of waterside system 200 can belocated within building 10 (e.g., as components of waterside system 120)or at an offsite location such as a central plant.

In FIG. 2 , waterside system 200 is shown as a central plant having aplurality of subplants 202-212. Subplants 202-212 are shown to include aheater subplant 202, a heat recovery chiller subplant 204, a chillersubplant 206, a cooling tower subplant 208, a hot thermal energy storage(TES) subplant 210, and a cold thermal energy storage (TES) subplant212. Subplants 202-212 consume resources (e.g., water, natural gas,electricity, etc.) from utilities to serve thermal energy loads (e.g.,hot water, cold water, heating, cooling, etc.) of a building or campus.For example, heater subplant 202 can be configured to heat water in ahot water loop 214 that circulates the hot water between heater subplant202 and building 10. Chiller subplant 206 can be configured to chillwater in a cold water loop 216 that circulates the cold water betweenchiller subplant 206 building 10. Heat recovery chiller subplant 204 canbe configured to transfer heat from cold water loop 216 to hot waterloop 214 to provide additional heating for the hot water and additionalcooling for the cold water. Condenser water loop 218 may absorb heatfrom the cold water in chiller subplant 206 and reject the absorbed heatin cooling tower subplant 208 or transfer the absorbed heat to hot waterloop 214. Hot TES subplant 210 and cold TES subplant 212 may store hotand cold thermal energy, respectively, for subsequent use.

Hot water loop 214 and cold water loop 216 may deliver the heated and/orchilled water to air handlers located on the rooftop of building 10(e.g., AHU 106) or to individual floors or zones of building 10 (e.g.,VAV units 116). The air handlers push air past heat exchangers (e.g.,heating coils or cooling coils) through which the water flows to provideheating or cooling for the air. The heated or cooled air can bedelivered to individual zones of building 10 to serve thermal energyloads of building 10. The water then returns to subplants 202-212 toreceive further heating or cooling.

Although subplants 202-212 are shown and described as heating andcooling water for circulation to a building, it is understood that anyother type of working fluid (e.g., glycol, CO2, etc.) can be used inplace of or in addition to water to serve thermal energy loads. In otherembodiments, subplants 202-212 may provide heating and/or coolingdirectly to the building or campus without requiring an intermediateheat transfer fluid. These and other variations to waterside system 200are within the teachings of the present disclosure.

Each of subplants 202-212 can include a variety of equipment configuredto facilitate the functions of the subplant. For example, heatersubplant 202 is shown to include a plurality of heating elements 220(e.g., boilers, electric heaters, etc.) configured to add heat to thehot water in hot water loop 214. Heater subplant 202 is also shown toinclude several pumps 222 and 224 configured to circulate the hot waterin hot water loop 214 and to control the flow rate of the hot waterthrough individual heating elements 220. Chiller subplant 206 is shownto include a plurality of chillers 232 configured to remove heat fromthe cold water in cold water loop 216. Chiller subplant 206 is alsoshown to include several pumps 234 and 236 configured to circulate thecold water in cold water loop 216 and to control the flow rate of thecold water through individual chillers 232.

Heat recovery chiller subplant 204 is shown to include a plurality ofheat recovery heat exchangers 226 (e.g., refrigeration circuits)configured to transfer heat from cold water loop 216 to hot water loop214. Heat recovery chiller subplant 204 is also shown to include severalpumps 228 and 230 configured to circulate the hot water and/or coldwater through heat recovery heat exchangers 226 and to control the flowrate of the water through individual heat recovery heat exchangers 226.Cooling tower subplant 208 is shown to include a plurality of coolingtowers 238 configured to remove heat from the condenser water incondenser water loop 218. Cooling tower subplant 208 is also shown toinclude several pumps 240 configured to circulate the condenser water incondenser water loop 218 and to control the flow rate of the condenserwater through individual cooling towers 238.

Hot TES subplant 210 is shown to include a hot TES tank 242 configuredto store the hot water for later use. Hot TES subplant 210 may alsoinclude one or more pumps or valves configured to control the flow rateof the hot water into or out of hot TES tank 242. Cold TES subplant 212is shown to include cold TES tanks 244 configured to store the coldwater for later use. Cold TES subplant 212 may also include one or morepumps or valves configured to control the flow rate of the cold waterinto or out of cold TES tanks 244.

In some embodiments, one or more of the pumps in waterside system 200(e.g., pumps 222, 224, 228, 230, 234, 236, and/or 240) or pipelines inwaterside system 200 include an isolation valve associated therewith.Isolation valves can be integrated with the pumps or positioned upstreamor downstream of the pumps to control the fluid flows in watersidesystem 200. In various embodiments, waterside system 200 can includemore, fewer, or different types of devices and/or subplants based on theparticular configuration of waterside system 200 and the types of loadsserved by waterside system 200.

Airside System

Referring now to FIG. 3 , a block diagram of an airside system 300 isshown, according to some embodiments. In various embodiments, airsidesystem 300 may supplement or replace airside system 130 in HVAC system100 or can be implemented separate from HVAC system 100. Whenimplemented in HVAC system 100, airside system 300 can include a subsetof the HVAC devices in HVAC system 100 (e.g., AHU 106, VAV units 116,ducts 112-114, fans, dampers, etc.) and can be located in or aroundbuilding 10. Airside system 300 may operate to heat or cool an airflowprovided to building 10 using a heated or chilled fluid provided bywaterside system 200.

In FIG. 3 , airside system 300 is shown to include an economizer-typeair handling unit (AHU) 302. Economizer-type AHUs vary the amount ofoutside air and return air used by the air handling unit for heating orcooling. For example, AHU 302 may receive return air 304 from buildingzone 306 via return air duct 308 and may deliver supply air 310 tobuilding zone 306 via supply air duct 312. In some embodiments, AHU 302is a rooftop unit located on the roof of building 10 (e.g., AHU 106 asshown in FIG. 1 ) or otherwise positioned to receive both return air 304and outside air 314. AHU 302 can be configured to operate exhaust airdamper 316, mixing damper 318, and outside air damper 320 to control anamount of outside air 314 and return air 304 that combine to form supplyair 310. Any return air 304 that does not pass through mixing damper 318can be exhausted from AHU 302 through exhaust damper 316 as exhaust air322.

Each of dampers 316-320 can be operated by an actuator. For example,exhaust air damper 316 can be operated by actuator 324, mixing damper318 can be operated by actuator 326, and outside air damper 320 can beoperated by actuator 328. Actuators 324-328 may communicate with an AHUcontroller 330 via a communications link 332. Actuators 324-328 mayreceive control signals from AHU controller 330 and may provide feedbacksignals to AHU controller 330. Feedback signals can include, forexample, an indication of a current actuator or damper position, anamount of torque or force exerted by the actuator, diagnosticinformation (e.g., results of diagnostic tests performed by actuators324-328), status information, commissioning information, configurationsettings, calibration data, and/or other types of information or datathat can be collected, stored, or used by actuators 324-328. AHUcontroller 330 can be an economizer controller configured to use one ormore control algorithms (e.g., state-based algorithms, extremum seekingcontrol (ESC) algorithms, proportional-integral (PI) control algorithms,proportional-integral-derivative (PID) control algorithms, modelpredictive control (MPC) algorithms, feedback control algorithms, etc.)to control actuators 324-328.

Still referring to FIG. 3 , AHU 302 is shown to include a cooling coil334, a heating coil 336, and a fan 338 positioned within supply air duct312. Fan 338 can be configured to force supply air 310 through coolingcoil 334 and/or heating coil 336 and provide supply air 310 to buildingzone 306. AHU controller 330 may communicate with fan 338 viacommunications link 340 to control a flow rate of supply air 310. Insome embodiments, AHU controller 330 controls an amount of heating orcooling applied to supply air 310 by modulating a speed of fan 338.

Cooling coil 334 may receive a chilled fluid from waterside system 200(e.g., from cold water loop 216) via piping 342 and may return thechilled fluid to waterside system 200 via piping 344. Valve 346 can bepositioned along piping 342 or piping 344 to control a flow rate of thechilled fluid through cooling coil 334. In some embodiments, coolingcoil 334 includes multiple stages of cooling coils that can beindependently activated and deactivated (e.g., by AHU controller 330, byBMS controller 366, etc.) to modulate an amount of cooling applied tosupply air 310.

Heating coil 336 may receive a heated fluid from waterside system 200(e.g., from hot water loop 214) via piping 348 and may return the heatedfluid to waterside system 200 via piping 350. Valve 352 can bepositioned along piping 348 or piping 350 to control a flow rate of theheated fluid through heating coil 336. In some embodiments, heating coil336 includes multiple stages of heating coils that can be independentlyactivated and deactivated (e.g., by AHU controller 330, by BMScontroller 366, etc.) to modulate an amount of heating applied to supplyair 310.

Each of valves 346 and 352 can be controlled by an actuator. Forexample, valve 346 can be controlled by actuator 354 and valve 352 canbe controlled by actuator 356. Actuators 354-356 may communicate withAHU controller 330 via communications links 358-360.

Actuators 354-356 may receive control signals from AHU controller 330and may provide feedback signals to controller 330. In some embodiments,AHU controller 330 receives a measurement of the supply air temperaturefrom a temperature sensor 362 positioned in supply air duct 312 (e.g.,downstream of cooling coil 334 and/or heating coil 336). AHU controller330 may also receive a measurement of the temperature of building zone306 from a temperature sensor 364 located in building zone 306.

In some embodiments, AHU controller 330 operates valves 346 and 352 viaactuators 354-356 to modulate an amount of heating or cooling providedto supply air 310 (e.g., to achieve a setpoint temperature for supplyair 310 or to maintain the temperature of supply air 310 within asetpoint temperature range). The positions of valves 346 and 352 affectthe amount of heating or cooling provided to supply air 310 by coolingcoil 334 or heating coil 336 and may correlate with the amount of energyconsumed to achieve a desired supply air temperature. AHU 330 maycontrol the temperature of supply air 310 and/or building zone 306 byactivating or deactivating coils 334-336, adjusting a speed of fan 338,or a combination of both.

Still referring to FIG. 3 , airside system 300 is shown to include abuilding management system (BMS) controller 366 and a client device 368.BMS controller 366 can include one or more computer systems (e.g.,servers, supervisory controllers, subsystem controllers, etc.) thatserve as system level controllers, application or data servers, headnodes, or master controllers for airside system 300, waterside system200, HVAC system 100, and/or other controllable systems that servebuilding 10. BMS controller 366 may communicate with multiple downstreambuilding systems or subsystems (e.g., HVAC system 100, a securitysystem, a lighting system, waterside system 200, etc.) via acommunications link 370 according to like or disparate protocols (e.g.,LON, BACnet, etc.). In various embodiments, AHU controller 330 and BMScontroller 366 can be separate (as shown in FIG. 3 ) or integrated. Inan integrated implementation, AHU controller 330 can be a softwaremodule configured for execution by a processor of BMS controller 366.

In some embodiments, AHU controller 330 receives information from BMScontroller 366 (e.g., commands, setpoints, operating boundaries, etc.)and provides information to BMS controller 366 (e.g., temperaturemeasurements, valve or actuator positions, operating statuses,diagnostics, etc.). For example, AHU controller 330 may provide BMScontroller 366 with temperature measurements from temperature sensors362-364, equipment on/off states, equipment operating capacities, and/orany other information that can be used by BMS controller 366 to monitoror control a variable state or condition within building zone 306.

Client device 368 can include one or more human-machine interfaces orclient interfaces (e.g., graphical user interfaces, reportinginterfaces, text-based computer interfaces, client-facing web services,web servers that provide pages to web clients, etc.) for controlling,viewing, or otherwise interacting with HVAC system 100, its subsystems,and/or devices. Client device 368 can be a computer workstation, aclient terminal, a remote or local interface, or any other type of userinterface device. Client device 368 can be a stationary terminal or amobile device. For example, client device 368 can be a desktop computer,a computer server with a user interface, a laptop computer, a tablet, asmartphone, a PDA, or any other type of mobile or non-mobile device.Client device 368 may communicate with BMS controller 366 and/or AHUcontroller 330 via communications link 372.

Building Management Systems

Referring now to FIG. 4 , a block diagram of a building managementsystem (BMS) 400 is shown, according to some embodiments. BMS 400 can beimplemented in building 10 to automatically monitor and control variousbuilding functions. BMS 400 is shown to include BMS controller 366 and aplurality of building subsystems 428. Building subsystems 428 are shownto include a building electrical subsystem 434, an informationcommunication technology (ICT) subsystem 436, a security subsystem 438,a HVAC subsystem 440, a lighting subsystem 442, a lift/escalatorssubsystem 432, and a fire safety subsystem 430. In various embodiments,building subsystems 428 can include fewer, additional, or alternativesubsystems. For example, building subsystems 428 may also oralternatively include a refrigeration subsystem, an advertising orsignage subsystem, a cooking subsystem, a vending subsystem, a printeror copy service subsystem, or any other type of building subsystem thatuses controllable equipment and/or sensors to monitor or controlbuilding 10. In some embodiments, building subsystems 428 includewaterside system 200 and/or airside system 300, as described withreference to FIGS. 2-3 .

Each of building subsystems 428 can include any number of devices,controllers, and connections for completing its individual functions andcontrol activities. HVAC subsystem 440 can include many of the samecomponents as HVAC system 100, as described with reference to FIGS. 1-3. For example, HVAC subsystem 440 can include a chiller, a boiler, anynumber of air handling units, economizers, field controllers,supervisory controllers, actuators, temperature sensors, and otherdevices for controlling the temperature, humidity, airflow, or othervariable conditions within building 10. Lighting subsystem 442 caninclude any number of light fixtures, ballasts, lighting sensors,dimmers, or other devices configured to controllably adjust the amountof light provided to a building space. Security subsystem 438 caninclude occupancy sensors, video surveillance cameras, digital videorecorders, video processing servers, intrusion detection devices, accesscontrol devices and servers, or other security-related devices.

Still referring to FIG. 4 , BMS controller 366 is shown to include acommunications interface 407 and a BMS interface 409. Interface 407 mayfacilitate communications between BMS controller 366 and externalapplications (e.g., monitoring and reporting applications 422,enterprise control applications 426, remote systems and applications444, applications residing on client devices 448, etc.) for allowinguser control, monitoring, and adjustment to BMS controller 366 and/orsubsystems 428. Interface 407 may also facilitate communications betweenBMS controller 366 and client devices 448. BMS interface 409 mayfacilitate communications between BMS controller 366 and buildingsubsystems 428 (e.g., HVAC, lighting security, lifts, powerdistribution, business, etc.).

Interfaces 407, 409 can be or include wired or wireless communicationsinterfaces (e.g., jacks, antennas, transmitters, receivers,transceivers, wire terminals, etc.) for conducting data communicationswith building subsystems 428 or other external systems or devices. Invarious embodiments, communications via interfaces 407, 409 can bedirect (e.g., local wired or wireless communications) or via acommunications network 446 (e.g., a WAN, the Internet, a cellularnetwork, etc.). For example, interfaces 407, 409 can include an Ethernetcard and port for sending and receiving data via an Ethernet-basedcommunications link or network. In another example, interfaces 407, 409can include a Wi-Fi transceiver for communicating via a wirelesscommunications network. In another example, one or both of interfaces407, 409 can include cellular or mobile phone communicationstransceivers. In one embodiment, communications interface 407 is a powerline communications interface and BMS interface 409 is an Ethernetinterface. In other embodiments, both communications interface 407 andBMS interface 409 are Ethernet interfaces or are the same Ethernetinterface.

Still referring to FIG. 4 , BMS controller 366 is shown to include aprocessing circuit 404 including a processor 406 and memory 408.Processing circuit 404 can be communicably connected to BMS interface409 and/or communications interface 407 such that processing circuit 404and the various components thereof can send and receive data viainterfaces 407, 409. Processor 406 can be implemented as a generalpurpose processor, an application specific integrated circuit (ASIC),one or more field programmable gate arrays (FPGAs), a group ofprocessing components, or other suitable electronic processingcomponents.

Memory 408 (e.g., memory, memory unit, storage device, etc.) can includeone or more devices (e.g., RAM, ROM, Flash memory, hard disk storage,etc.) for storing data and/or computer code for completing orfacilitating the various processes, layers and modules described in thepresent application. Memory 408 can be or include volatile memory ornon-volatile memory. Memory 408 can include database components, objectcode components, script components, or any other type of informationstructure for supporting the various activities and informationstructures described in the present application. According to someembodiments, memory 408 is communicably connected to processor 406 viaprocessing circuit 404 and includes computer code for executing (e.g.,by processing circuit 404 and/or processor 406) one or more processesdescribed herein.

In some embodiments, BMS controller 366 is implemented within a singlecomputer (e.g., one server, one housing, etc.). In various otherembodiments BMS controller 366 can be distributed across multipleservers or computers (e.g., that can exist in distributed locations).Further, while FIG. 4 shows applications 422 and 426 as existing outsideof BMS controller 366, in some embodiments, applications 422 and 426 canbe hosted within BMS controller 366 (e.g., within memory 408).

Still referring to FIG. 4 , memory 408 is shown to include an enterpriseintegration layer 410, an automated measurement and validation (AM&V)layer 412, a demand response (DR) layer 414, a fault detection anddiagnostics (FDD) layer 416, an integrated control layer 418, and abuilding subsystem integration later 420. Layers 410-420 can beconfigured to receive inputs from building subsystems 428 and other datasources, determine optimal control actions for building subsystems 428based on the inputs, generate control signals based on the optimalcontrol actions, and provide the generated control signals to buildingsubsystems 428. The following paragraphs describe some of the generalfunctions performed by each of layers 410-420 in BMS 400.

Enterprise integration layer 410 can be configured to serve clients orlocal applications with information and services to support a variety ofenterprise-level applications. For example, enterprise controlapplications 426 can be configured to provide subsystem-spanning controlto a graphical user interface (GUI) or to any number of enterprise-levelbusiness applications (e.g., accounting systems, user identificationsystems, etc.). Enterprise control applications 426 may also oralternatively be configured to provide configuration GUIs forconfiguring BMS controller 366. In yet other embodiments, enterprisecontrol applications 426 can work with layers 410-420 to optimizebuilding performance (e.g., efficiency, energy use, comfort, or safety)based on inputs received at interface 407 and/or BMS interface 409.

Building subsystem integration layer 420 can be configured to managecommunications between BMS controller 366 and building subsystems 428.For example, building subsystem integration layer 420 may receive sensordata and input signals from building subsystems 428 and provide outputdata and control signals to building subsystems 428. Building subsystemintegration layer 420 may also be configured to manage communicationsbetween building subsystems 428. Building subsystem integration layer420 translate communications (e.g., sensor data, input signals, outputsignals, etc.) across a plurality of multi-vendor/multi-protocolsystems.

Demand response layer 414 can be configured to optimize resource usage(e.g., electricity use, natural gas use, water use, etc.) and/or themonetary cost of such resource usage in response to satisfy the demandof building 10. The optimization can be based on time-of-use prices,curtailment signals, energy availability, or other data received fromutility providers, distributed energy generation systems 424, fromenergy storage 427 (e.g., hot TES 242, cold TES 244, etc.), or fromother sources. Demand response layer 414 may receive inputs from otherlayers of BMS controller 366 (e.g., building subsystem integration layer420, integrated control layer 418, etc.). The inputs received from otherlayers can include environmental or sensor inputs such as temperature,carbon dioxide levels, relative humidity levels, air quality sensoroutputs, occupancy sensor outputs, room schedules, and the like. Theinputs may also include inputs such as electrical use (e.g., expressedin kWh), thermal load measurements, pricing information, projectedpricing, smoothed pricing, curtailment signals from utilities, and thelike.

According to some embodiments, demand response layer 414 includescontrol logic for responding to the data and signals it receives. Theseresponses can include communicating with the control algorithms inintegrated control layer 418, changing control strategies, changingsetpoints, or activating/deactivating building equipment or subsystemsin a controlled manner. Demand response layer 414 may also includecontrol logic configured to determine when to utilize stored energy. Forexample, demand response layer 414 may determine to begin using energyfrom energy storage 427 just prior to the beginning of a peak use hour.

In some embodiments, demand response layer 414 includes a control moduleconfigured to actively initiate control actions (e.g., automaticallychanging setpoints) which minimize energy costs based on one or moreinputs representative of or based on demand (e.g., price, a curtailmentsignal, a demand level, etc.). In some embodiments, demand responselayer 414 uses equipment models to determine an optimal set of controlactions. The equipment models can include, for example, thermodynamicmodels describing the inputs, outputs, and/or functions performed byvarious sets of building equipment. Equipment models may representcollections of building equipment (e.g., subplants, chiller arrays,etc.) or individual devices (e.g., individual chillers, heaters, pumps,etc.).

Demand response layer 414 may further include or draw upon one or moredemand response policy definitions (e.g., databases, XML, files, etc.).The policy definitions can be edited or adjusted by a user (e.g., via agraphical user interface) so that the control actions initiated inresponse to demand inputs can be tailored for the user's application,desired comfort level, particular building equipment, or based on otherconcerns. For example, the demand response policy definitions canspecify which equipment can be turned on or off in response toparticular demand inputs, how long a system or piece of equipment shouldbe turned off, what setpoints can be changed, what the allowable setpoint adjustment range is, how long to hold a high demand setpointbefore returning to a normally scheduled setpoint, how close to approachcapacity limits, which equipment modes to utilize, the energy transferrates (e.g., the maximum rate, an alarm rate, other rate boundaryinformation, etc.) into and out of energy storage devices (e.g., thermalstorage tanks, battery banks, etc.), and when to dispatch on-sitegeneration of energy (e.g., via fuel cells, a motor generator set,etc.).

Integrated control layer 418 can be configured to use the data input oroutput of building subsystem integration layer 420 and/or demandresponse later 414 to make control decisions. Due to the subsystemintegration provided by building subsystem integration layer 420,integrated control layer 418 can integrate control activities of thesubsystems 428 such that the subsystems 428 behave as a singleintegrated supersystem. In some embodiments, integrated control layer418 includes control logic that uses inputs and outputs from a pluralityof building subsystems to provide greater comfort and energy savingsrelative to the comfort and energy savings that separate subsystemscould provide alone. For example, integrated control layer 418 can beconfigured to use an input from a first subsystem to make anenergy-saving control decision for a second subsystem. Results of thesedecisions can be communicated back to building subsystem integrationlayer 420.

Integrated control layer 418 is shown to be logically below demandresponse layer 414. Integrated control layer 418 can be configured toenhance the effectiveness of demand response layer 414 by enablingbuilding subsystems 428 and their respective control loops to becontrolled in coordination with demand response layer 414. Thisconfiguration may advantageously reduce disruptive demand responsebehavior relative to conventional systems. For example, integratedcontrol layer 418 can be configured to assure that a demandresponse-driven upward adjustment to the setpoint for chilled watertemperature (or another component that directly or indirectly affectstemperature) does not result in an increase in fan energy (or otherenergy used to cool a space) that would result in greater total buildingenergy use than was saved at the chiller.

Integrated control layer 418 can be configured to provide feedback todemand response layer 414 so that demand response layer 414 checks thatconstraints (e.g., temperature, lighting levels, etc.) are properlymaintained even while demanded load shedding is in progress. Theconstraints may also include setpoint or sensed boundaries relating tosafety, equipment operating limits and performance, comfort, fire codes,electrical codes, energy codes, and the like. Integrated control layer418 is also logically below fault detection and diagnostics layer 416and automated measurement and validation layer 412. Integrated controllayer 418 can be configured to provide calculated inputs (e.g.,aggregations) to these higher levels based on outputs from more than onebuilding subsystem.

Automated measurement and validation (AM&V) layer 412 can be configuredto verify that control strategies commanded by integrated control layer418 or demand response layer 414 are working properly (e.g., using dataaggregated by AM&V layer 412, integrated control layer 418, buildingsubsystem integration layer 420, FDD layer 416, or otherwise). Thecalculations made by AM&V layer 412 can be based on building systemenergy models and/or equipment models for individual BMS devices orsubsystems. For example, AM&V layer 412 may compare a model-predictedoutput with an actual output from building subsystems 428 to determinean accuracy of the model.

Fault detection and diagnostics (FDD) layer 416 can be configured toprovide on-going fault detection for building subsystems 428, buildingsubsystem devices (i.e., building equipment), and control algorithmsused by demand response layer 414 and integrated control layer 418. FDDlayer 416 may receive data inputs from integrated control layer 418,directly from one or more building subsystems or devices, or fromanother data source. FDD layer 416 may automatically diagnose andrespond to detected faults. The responses to detected or diagnosedfaults can include providing an alert message to a user, a maintenancescheduling system, or a control algorithm configured to attempt torepair the fault or to work-around the fault.

FDD layer 416 can be configured to output a specific identification ofthe faulty component or cause of the fault (e.g., loose damper linkage)using detailed subsystem inputs available at building subsystemintegration layer 420. In other exemplary embodiments, FDD layer 416 isconfigured to provide “fault” events to integrated control layer 418which executes control strategies and policies in response to thereceived fault events. According to some embodiments, FDD layer 416 (ora policy executed by an integrated control engine or business rulesengine) may shut-down systems or direct control activities around faultydevices or systems to reduce energy waste, extend equipment life, orassure proper control response.

FDD layer 416 can be configured to store or access a variety ofdifferent system data stores (or data points for live data). FDD layer416 may use some content of the data stores to identify faults at theequipment level (e.g., specific chiller, specific AHU, specific terminalunit, etc.) and other content to identify faults at component orsubsystem levels. For example, building subsystems 428 may generatetemporal (i.e., time-series) data indicating the performance of BMS 400and the various components thereof. The data generated by buildingsubsystems 428 can include measured or calculated values that exhibitstatistical characteristics and provide information about how thecorresponding system or process (e.g., a temperature control process, aflow control process, etc.) is performing in terms of error from itssetpoint. These processes can be examined by FDD layer 416 to exposewhen the system begins to degrade in performance and alert a user torepair the fault before it becomes more severe.

Referring now to FIG. 5 , a block diagram of another building managementsystem (BMS) 500 is shown, according to some embodiments. BMS 500 can beused to monitor and control the devices of HVAC system 100, watersidesystem 200, airside system 300, building subsystems 428, as well asother types of BMS devices (e.g., lighting equipment, securityequipment, etc.) and/or HVAC equipment.

BMS 500 provides a system architecture that facilitates automaticequipment discovery and equipment model distribution. Equipmentdiscovery can occur on multiple levels of BMS 500 across multipledifferent communications busses (e.g., a system bus 554, zone buses556-560 and 564, sensor/actuator bus 566, etc.) and across multipledifferent communications protocols. In some embodiments, equipmentdiscovery is accomplished using active node tables, which provide statusinformation for devices connected to each communications bus. Forexample, each communications bus can be monitored for new devices bymonitoring the corresponding active node table for new nodes. When a newdevice is detected, BMS 500 can begin interacting with the new device(e.g., sending control signals, using data from the device) without userinteraction.

Some devices in BMS 500 present themselves to the network usingequipment models. An equipment model defines equipment objectattributes, view definitions, schedules, trends, and the associatedBACnet value objects (e.g., analog value, binary value, multistatevalue, etc.) that are used for integration with other systems. Somedevices in BMS 500 store their own equipment models. Other devices inBMS 500 have equipment models stored externally (e.g., within otherdevices). For example, a zone coordinator 508 can store the equipmentmodel for a bypass damper 528. In some embodiments, zone coordinator 508automatically creates the equipment model for bypass damper 528 or otherdevices on zone bus 558. Other zone coordinators can also createequipment models for devices connected to their zone busses. Theequipment model for a device can be created automatically based on thetypes of data points exposed by the device on the zone bus, device type,and/or other device attributes. Several examples of automatic equipmentdiscovery and equipment model distribution are discussed in greaterdetail below.

Still referring to FIG. 5 , BMS 500 is shown to include a system manager502; several zone coordinators 506, 508, 510 and 518; and several zonecontrollers 524, 530, 532, 536, 548, and 550. System manager 502 canmonitor data points in BMS 500 and report monitored variables to variousmonitoring and/or control applications. System manager 502 cancommunicate with client devices 504 (e.g., user devices, desktopcomputers, laptop computers, mobile devices, etc.) via a datacommunications link 574 (e.g., BACnet IP, Ethernet, wired or wirelesscommunications, etc.). System manager 502 can provide a user interfaceto client devices 504 via data communications link 574. The userinterface may allow users to monitor and/or control BMS 500 via clientdevices 504.

In some embodiments, system manager 502 is connected with zonecoordinators 506-510 and 518 via a system bus 554. System manager 502can be configured to communicate with zone coordinators 506-510 and 518via system bus 554 using a master-slave token passing (MSTP) protocol orany other communications protocol. System bus 554 can also connectsystem manager 502 with other devices such as a constant volume (CV)rooftop unit (RTU) 512, an input/output module (TOM) 514, a thermostatcontroller 516 (e.g., a TEC5000 series thermostat controller), and anetwork automation engine (NAE) or third-party controller 520. RTU 512can be configured to communicate directly with system manager 502 andcan be connected directly to system bus 554. Other RTUs can communicatewith system manager 502 via an intermediate device. For example, a wiredinput 562 can connect a third-party RTU 542 to thermostat controller516, which connects to system bus 554.

System manager 502 can provide a user interface for any devicecontaining an equipment model. Devices such as zone coordinators 506-510and 518 and thermostat controller 516 can provide their equipment modelsto system manager 502 via system bus 554. In some embodiments, systemmanager 502 automatically creates equipment models for connected devicesthat do not contain an equipment model (e.g., IOM 514, third partycontroller 520, etc.). For example, system manager 502 can create anequipment model for any device that responds to a device tree request.The equipment models created by system manager 502 can be stored withinsystem manager 502. System manager 502 can then provide a user interfacefor devices that do not contain their own equipment models using theequipment models created by system manager 502. In some embodiments,system manager 502 stores a view definition for each type of equipmentconnected via system bus 554 and uses the stored view definition togenerate a user interface for the equipment.

Each zone coordinator 506-510 and 518 can be connected with one or moreof zone controllers 524, 530-532, 536, and 548-550 via zone buses 556,558, 560, and 564. Zone coordinators 506-510 and 518 can communicatewith zone controllers 524, 530-532, 536, and 548-550 via zone busses556-560 and 564 using a MSTP protocol or any other communicationsprotocol. Zone busses 556-560 and 564 can also connect zone coordinators506-510 and 518 with other types of devices such as variable air volume(VAV) RTUs 522 and 540, changeover bypass (COBP) RTUs 526 and 552,bypass dampers 528 and 546, and PEAK controllers 534 and 544.

Zone coordinators 506-510 and 518 can be configured to monitor andcommand various zoning systems. In some embodiments, each zonecoordinator 506-510 and 518 monitors and commands a separate zoningsystem and is connected to the zoning system via a separate zone bus.For example, zone coordinator 506 can be connected to VAV RTU 522 andzone controller 524 via zone bus 556. Zone coordinator 508 can beconnected to COBP RTU 526, bypass damper 528, COBP zone controller 530,and VAV zone controller 532 via zone bus 558. Zone coordinator 510 canbe connected to PEAK controller 534 and VAV zone controller 536 via zonebus 560. Zone coordinator 518 can be connected to PEAK controller 544,bypass damper 546, COBP zone controller 548, and VAV zone controller 550via zone bus 564.

A single model of zone coordinator 506-510 and 518 can be configured tohandle multiple different types of zoning systems (e.g., a VAV zoningsystem, a COBP zoning system, etc.). Each zoning system can include aRTU, one or more zone controllers, and/or a bypass damper. For example,zone coordinators 506 and 510 are shown as Verasys VAV engines (VVEs)connected to VAV RTUs 522 and 540, respectively. Zone coordinator 506 isconnected directly to VAV RTU 522 via zone bus 556, whereas zonecoordinator 510 is connected to a third-party VAV RTU 540 via a wiredinput 568 provided to PEAK controller 534. Zone coordinators 508 and 518are shown as Verasys COBP engines (VCEs) connected to COBP RTUs 526 and552, respectively. Zone coordinator 508 is connected directly to COBPRTU 526 via zone bus 558, whereas zone coordinator 518 is connected to athird-party COBP RTU 552 via a wired input 570 provided to PEAKcontroller 544.

Zone controllers 524, 530-532, 536, and 548-550 can communicate withindividual BMS devices (e.g., sensors, actuators, etc.) viasensor/actuator (SA) busses. For example, VAV zone controller 536 isshown connected to networked sensors 538 via SA bus 566. Zone controller536 can communicate with networked sensors 538 using a MSTP protocol orany other communications protocol. Although only one SA bus 566 is shownin FIG. 5 , it should be understood that each zone controller 524,530-532, 536, and 548-550 can be connected to a different SA bus. EachSA bus can connect a zone controller with various sensors (e.g.,temperature sensors, humidity sensors, pressure sensors, light sensors,occupancy sensors, etc.), actuators (e.g., damper actuators, valveactuators, etc.) and/or other types of controllable equipment (e.g.,chillers, heaters, fans, pumps, etc.).

Each zone controller 524, 530-532, 536, and 548-550 can be configured tomonitor and control a different building zone. Zone controllers 524,530-532, 536, and 548-550 can use the inputs and outputs provided viatheir SA busses to monitor and control various building zones. Forexample, a zone controller 536 can use a temperature input received fromnetworked sensors 538 via SA bus 566 (e.g., a measured temperature of abuilding zone) as feedback in a temperature control algorithm. Zonecontrollers 524, 530-532, 536, and 548-550 can use various types ofcontrol algorithms (e.g., state-based algorithms, extremum seekingcontrol (ESC) algorithms, proportional-integral (PI) control algorithms,proportional-integral-derivative (PID) control algorithms, modelpredictive control (MPC) algorithms, feedback control algorithms, etc.)to control a variable state or condition (e.g., temperature, humidity,airflow, lighting, etc.) in or around building 10.

Web Services System with Ratings Platform

Referring now to FIG. 6 , a block diagram of a web services system 600is shown, according to an exemplary embodiment. Web services system 600is shown to include ratings platform 602. The ratings platform 602 canbe configured to obtain data from a variety of data sources, determine adevice rating, and/or provide the device rating to a user device to beused for sales and/or marketing purposes. In some embodiments, theratings platform 602 is also configured to obtain data from a variety ofdata sources, determine a device rating, and/or store the device ratingto be used for subsequent ratings and/or for additional sales and/ormarketing purposes.

In other embodiments, the ratings platform 602 is configured to obtaindata from a variety of data sources, determine a device rating, generatea predictive model for a device (e.g., based on the device rating),and/or control the device or other equipment around a building or abuilding area (e.g., based on the device rating), or any combinationthereof.

According to an exemplary embodiment, the ratings platform 602 obtainsdata from a variety of sources. For example, the ratings platform 602 isshown collecting data from a user device 610. The user device 610 caninclude one or more human-machine interfaces or client interfaces (e.g.,shown as user interface 612, graphical user interfaces, reportinginterfaces, text-based computer interfaces, client-facing web services,web servers that provide pages to web clients, etc.) for controlling,viewing, or otherwise interacting with the ratings platform 602. Theuser device 610 can be a computer workstation, a client terminal, aremote or local interface, or any other type of user interface device.The user device 610 can be a stationary terminal or a mobile device. Forexample, the user device 610 can be a desktop computer, a computerserver with a user interface, a laptop computer, a tablet, a smartphone,a PDA, or any other type of mobile or non-mobile device.

The ratings platform 602 can also collect data from a storage system 620(e.g., having a building equipment device database 622, etc.), eitherdirectly (e.g., via a network 604) or indirectly (e.g., via the userdevice 610). The storage system 620 may include one or more devices(e.g., RAM, ROM, Flash memory, hard disk storage, etc.) for storing dataand/or computer code for completing or facilitating the variousprocesses, layers and modules described in the present application. Thestorage system 620 can be or include volatile memory or non-volatilememory, and can include database components, object code components,script components, or any other type of information structure forsupporting the various activities and information structures describedin the present application.

In some embodiments, the ratings platform 602 also collects data from abuilding management system (e.g., BMS 400 of FIG. 4 , BMS 500 of FIG. 5, etc.), and/or a variety of devices 640-644 (e.g., via the network604), which may be internet of things (IoT) devices. While the devicesdescribed herein are generally referred to as IoT devices, it should beunderstood that, in various embodiments, the devices referenced in thepresent disclosure could be any type of devices capable to communicationof data over an electronic network.

The ratings platform 602 may also be configured to generate datainternally. For example, the ratings platform 602 may include a devicebatch orchestrator, a device rating service, a device rating cachedatabase, a device rating storage, a plurality of rating engines, and/orother types of platform systems or services that receive, generate,store, etc. data. The data generated by ratings platform 602 can becollected, stored, and processed along with the data received from otherdata sources. The ratings platform 602 can collect data directly fromexternal systems or devices or via the network 604 (e.g., a WAN, theInternet, a cellular network, etc.). Several features of the ratingsplatform 602 are described in detail below.

Ratings Platform

Referring now to FIG. 7 , a block diagram illustrating the ratingsplatform 602 in greater detail is shown, according to some embodiments.The ratings platform 602 can be configured to obtain/receive/retrievedata from a variety of sources, determine a device rating for a buildingequipment device, provide the device rating to a user device to be usedfor sales and/or marketing purposes, and/or store the device rating tobe used for subsequent ratings and/or for sales and/or marketingpurposes. In an exemplary embodiment, the ratings platform 602obtains/receives/retrieves a device profile for a device, determines arating for the device, and provides the device rating to a user deviceto be used for sales and/or marketing purposes. In some embodiments, theratings platform 602 receives a rating request for a device (e.g., achiller), determines a rating for the device, and provides the devicerating to a user device to be used for sales and/or marketing purposes.In other embodiments, the ratings platform 602 stores the devicerating(s) for use in subsequent ratings and/or for sales and/ormarketing purposes.

In other embodiments, the ratings platform 602 is also configured toobtain data from a variety of data sources, determine a device rating,generate a predictive model for the device, control the device, or anycombination thereof. In an exemplary embodiment, the ratings platform602 obtains/receives/retrieves a device profile for a device, determinesa rating for the device, generates a predictive model for the device,and/or controls the device or other building devices. In someembodiments, the ratings platform 602 receives a rating request for adevice (e.g., a chiller), determines a rating for the device, generatesa predictive model for the device, and/or controls the device or otherbuilding devices. In some embodiments, the ratings platform 602 does notcontrol the device, but rather provides the device rating and/orpredictive model to a separate controller (e.g., any controller in BMS400 or BMS 500) for use in controlling the device.

Although the ratings platform 602 is primarily described as generatingchiller device ratings throughout the present disclosure, the systemsand methods described herein are not limited to chillers. It iscontemplated that the functions of the ratings platform 602 (e.g., therating request, device rating, predictive model, controlling the device,etc.) may be readily applied to other types of devices without departingfrom the teachings of the present disclosure. For example, the devicemay be a component of an HVAC system (e.g., boilers, actuators,temperature sensors, and/or other devices that may be used forcontrolling temperature, humidity, airflow, or other variable conditionswithin a building), a component of a security system (e.g., occupancysensors, video surveillance cameras, digital video recorders, videoprocessing servers, intrusion detection devices, access control devicesand servers, and/or other security-related devices), a component of alighting system (e.g., light fixtures, ballasts, lighting sensors,dimmers, or other devices configured to controllably adjust the amountof light to a building, etc.), a component of a fire alerting system(e.g., fire detection devices, fire notification devices, firesuppression devices, etc.), or a component of any other system that iscapable of managing building functions or devices, or any combinationthereof.

Further, although the ratings platform 602 is described as beingconfigured to generate a predictive model or control a device throughoutthe present disclosure, the systems and methods described herein are notlimited to generating a predictive model and/or controlling a device. Itis contemplated that the functions of the ratings platform 602 (e.g.,the rating request, device rating, predictive model, etc.) may bereadily applied in other applications without departing from theteachings of the present disclosure. For example, the ratings platform602 may be configured to provide a device rating to a user device thatincludes a desirable device configuration for sales and/or marketingpurposes (e.g., most cost efficient configuration, most energy efficientconfiguration, etc.). In some embodiments, the ratings platform 602 isconfigured to provide a device rating to a user device that includessuitable components of the device (e.g., for use in sales and/ormarketing of components, etc.). In other embodiments, the ratingsplatform 602 is configured to provide a device rating that includes adegradation state of components of the device (e.g., for use in salesand/or marketing of components, etc.). In yet other embodiments, theratings platform 602 is configured to provide a device rating that isused in combination with other devices (e.g., a user interactive tool,etc.), systems, and/or applications (e.g., for use in sales and/ormarketing the device). An example of a system that can be used incombination with a device rating of the ratings platform 602 isdescribed in U.S. patent application Ser. No. 17/464,557, titled“User-Interactive Tools and Methods for Configuring Building EquipmentSystems” and filed Sep. 1, 2021, the entire disclosure of which isincorporated by reference herein.

As shown in FIG. 7 , the ratings platform 602 collects data from a userdevice (shown as the user device 610 of FIG. 6 ), a storage system(shown as the storage system 620 of FIG. 6 ), and/or other systems ordevices via a network (shown as the network 604 of FIG. 6 ). It shouldbe noted that some or all of the components of the ratings platform 602and/or the user device 610, the storage system 620, the network 604,etc., can be implemented as part of a cloud-based computing systemconfigured to receive and process data from one or more external devicesor sources (e.g., a user). Similarly, some or all of the components ofthe ratings platform 602 and/or the user device 610, the storage system620, the network 604, etc., can be integrated within a single device ordistributed across multiple separate systems or devices. In someembodiments, some or all of the components of the ratings platform 602and/or the user device 610, the storage system 620, the network 604,etc. are components of a subsystem level controller, a plant controller,a device controller, a field controller, a computer workstation, aclient device, or any other system or device that receives and processesdata from IoT devices or other data sources.

The ratings platform 602 is shown to include a communications interface702. The communications interface 702 can include wired or wirelesscommunications interfaces (e.g., jacks, antennas, transmitters,receivers, transceivers, wire terminals, etc.) for conducting datacommunications between the ratings platform 602 and external systems ordevices (e.g., the user device 610, the storage system 620, the network604, the BMS 400, the BMS 500, etc.). Communications conducted via thecommunications interface 702 can be direct (e.g., local wired orwireless communications) or via the network 604 (e.g., a WAN, theInternet, a cellular network, etc.).

In some embodiments, the communications interface 702 facilitatescommunications between the ratings platform 602 and externalapplications (e.g., remote systems and applications) for allowing usercontrol, monitoring, and adjustment to the ratings platform 602 and/orthe devices that communicate with the ratings platform 602 (e.g., theuser device 610, the storage system 620, components of the BMS 400, theBMS 500, etc.). The ratings platform 602 can be configured tocommunicate with external systems and/or devices using any of a varietyof communications protocols (e.g., HTTP(S), WebSocket, CoAP, MQTT,etc.), industrial control protocols (e.g., MTConnect, OPC, OPC-UA,etc.), process automation protocols (e.g., HART, Profibus, etc.), homeautomation protocols, or any of a variety of other protocols.Advantageously, the ratings platform 602 can receive, ingest, andprocess data from any type of system or device regardless of thecommunications protocol used by the system or device.

The ratings platform 602 can be configured to communicate with the userdevice 610. The user device 610 can include a user interface (shown as achillers selection tool 712) and/or application programing interface(s)(“API(s)”) (shown as a CSPS API 714, a reports API 716, etc.). Asmentioned above, the user device 610 may be a computing device having amemory (e.g., RAM, ROM, Flash memory, hard disk storage, etc.), aprocessor (e.g., a general purpose processor, an application specificintegrated circuit (ASIC), one or more field programmable gate arrays(FPGAs), a group of processing components (or other suitable electronicprocessing components), and/or a user interface (e.g., a touch screen),allowing a user to interact with the ratings platform 602.

The chillers selection tool 712 may be a user interface that enables auser to input desired building equipment device input data. According toan exemplary embodiment, the desired device input data includes anattribute characterizing the device (or a plurality thereof), a devicecharacteristic (or plurality thereof), and/or any other suitable datarelating to a desired device configuration. For example, the deviceinput data may include, but is not limited to: a desired device family,application, power consumption, location of use, model, etc.; whetherthe device includes a noise reduction kit, compressor variation,sensors, etc.; the type of refrigerant, coils, fans, etc. of the device;the device's full load rating standard, conditions, capacity, etc.; thedevice's evaporator temperature, flow rate, etc.; the device's condenserambient temperature, maximum fan frequency, etc.; and/or othercharacteristics relevant to the device configuration (e.g.,cost-efficiency, energy efficiency, altitude or air temperature duringuse, the size and type of the building the device is a component of,etc.). In some embodiments, the device characteristic, or other suitabledata relating to a desired configuration, are included in the attributescharacterizing the device. In an exemplary embodiment, the chillersselection tool 712 is also configured to communicate the device inputdata to the ratings platform 602 (e.g., in the form of a device ratingrequest) for further processing, as discussed below.

The user device 610 may also include APIs (e.g., CSPS API 714, ReportsAPI 716, etc.) that are configured to interact with web-basedapplications and/or systems to receive, process, send, etc. data. Forexample, the CSPS API 714 may receive device input data from thechillers selection tool 712. Based on the device input data, andalgorithms and/or predetermined rules (e.g., components that arecompatible with each other, components that satisfy user-specifiedperformance requirements, components that physically fit within aselected housing, etc.), the CSPS API 714 may determine or generate aplurality of possible device configurations (e.g., unique sets ofcomponents capable of being included the device). In some embodiments,the CSPS API 714 generates the plurality of possible deviceconfigurations using some or all of the rules and/or techniquesdescribed in U.S. patent application Ser. No. 17/388,514, filed Jul. 29,2021, the entire disclosure of which is incorporated by referenceherein. The CSPS API 714 may further be configured to communicate thelist of possible device configurations (e.g., in the form of deviceconfiguration data) to components of the ratings platform 602 (e.g., adevice batch orchestrator, etc.) for further processing and/or externalsystems or devices for storage. In some embodiments, the CSPS API 714 isalso configured to receive device data from the ratings platform 602(e.g., after processing by the ratings platform 602), and/or communicatedevice data to other devices or systems. For example, the CSPS API 714may be configured to receive ratings from the ratings platform 602,and/or communicate the ratings to an external device for storage and/orthe chillers selection tool 712 to be displayed on the user device 610.

In some embodiments, the user device also includes the reports API 716.The reports API 716 may receive report data (e.g., device report data,including device attributes, characteristics, specifications, etc.) froman external system or device, and communicate the report data to otherexternal systems or devices for processing and/or storage.

The ratings platform 602 may also be configured to communicate with thestorage system 620. The storage system 620 may include a buildingequipment device database (e.g., chillers database 722, the buildingequipment device database 622 of FIG. 6 , etc.), an API database (shownas a CSPS database 724), and a pricing database (shown as a CSPS pricingdatabase 726). The chillers database 722 may receive, store, and/or senddesired device attributes or characteristic, and/or a list of possibledevice configurations. For example, the chillers database 722 mayreceive and store desired device input data from the chillers selectiontool 712, and/or device configuration data from the CSPS API 714. TheCSPS database 724 may receive and store possible device configurationsand/or device ratings. For example, the CSPS database 724 may receiveand store device configuration data from the CSPS API 714, and/or ratingdata from the CSPS API 714 (e.g., via the ratings platform 602 afterprocessing). The CSPS pricing database 726 may receive and store devicepricing information. For example, the CSPS pricing database 726 mayreceive and store device pricing data from the CSPS API 714 (e.g.,directly, or via the ratings platform 602 after processing).

The ratings platform 602 may also be configured to communicate with theBMS 400 and/or the BMS 500 (e.g., via the network 604). The ratingsplatform 602 may receive device input data from the BMS 400 and/or theBMS 500, which may include data from any number of devices, controllers,and connections of the BMS 400 and/or the BMS 500 (e.g., via the HVACsubsystem 440, the security subsystem 438, the lighting subsystem 442,the fire safety subsystem 430, etc.). The ratings platform 602 maydetermine a device rating, and communicate the device rating to the BMS400 and/or the BMS 500 to complete control activities. The ratingsplatform 602 may also communicate a rating to the BMS 400 and/or the BMS500 in order to control the device and/or other devices of a building.

Still referring to FIG. 7 , the ratings platform 602 is generally shownto include a processing circuit 704 including a processor 706 and amemory 708. While shown as single components, it will be appreciatedthat the ratings platform 602 may include one or more processingcircuits including one or more processors and memory. In someembodiments, the ratings platform 602 includes a plurality ofprocessors, memories, interfaces, and other components distributedacross multiple devices or systems that are communicably coupled via thenetwork 604. For example, in a cloud-based or distributedimplementation, the ratings platform 602 may include multiple discretecomputing devices, each of which includes a processor 706, memory 708,communications interface 702, and/or other components of the ratingsplatform 602 that are communicably coupled via the network 604. Tasksperformed by the ratings platform 602 can be distributed across multiplesystems or devices, which may be located within a single building orfacility, or distributed across multiple buildings or facilities. Inother embodiments, the ratings platform 602 itself is implemented withina single computer (e.g., one server, one housing, etc.). All suchimplementations are contemplated herein.

The processor 706 can be a general purpose or specific purposeprocessor, an application specific integrated circuit (ASIC), one ormore field programmable gate arrays (FPGAs), a group of processingcomponents, or other suitable processing components. The processor 706may be configured to execute computer code or instructions stored in thememory 708 or received from other computer readable media (e.g., CDROM,network storage, a remote server, etc.).

The memory 708 can include one or more devices (e.g., memory units,memory devices, storage devices, etc.) for storing data and/or computercode for completing and/or facilitating the various processes describedin the present disclosure. The memory 708 can include random accessmemory (RAM), read-only memory (ROM), hard drive storage, temporarystorage, non-volatile memory, flash memory, optical memory, or any othersuitable memory for storing software objects and/or computerinstructions. Memory 708 can include database components, object codecomponents, script components, or any other type of informationstructure for supporting the various activities and informationstructures described in the present disclosure. The memory 708 can becommunicably connected to the processor 706 via the processing circuit704 and can include computer code for executing (e.g., by the processor706) one or more processes described herein. When the processor 706executes instructions stored in the memory 708, the processor 706generally configures the processing circuit 704 to complete suchactivities.

Still referring to FIG. 7 , the ratings platform 602 (e.g., the memory708) is shown to include a device batch orchestrator, a device ratingservice, a device rating cache database, and a device rating storage.According to an exemplary embodiment, the device batch orchestrator is achillers batch orchestrator 720 (hereinafter “CBO 730”), the devicerating service is a chillers rating service 732, the device rating cachedatabase is a chillers rating cache database 734 (hereinafter “CRCdatabase 734”), and the device rating storage is a chillers ratingstorage 736. As discussed above, the CBO 730, chillers rating service732, CRC database 734, and chillers rating storage 736 mayobtain/receive/retrieve a device profile (e.g., from the user device610, the storage system 620, the BMS 400, the BMS 500, etc.), andprovide a rating to components of the ratings platform 602 and/orexternal devices or systems (e.g., the user device 610, the storagesystem 620, the BMS 400, the BMS 500, etc.). In some embodiments, CBO730, chillers rating service 732, CRC database 734, and chillers ratingstorage 736 may obtain/receive/retrieve a rating request (e.g., from theuser device 610, the storage system 620, the BMS 400, the BMS 500,etc.), and provide a rating to components of the ratings platform 602and/or external devices or systems (e.g., the user device 610, thestorage system 620, the BMS 400, the BMS 500, etc.). The followingparagraphs describe some of the general functions performed by each ofthe components 720-726 of the ratings platform 602.

Although the components of the ratings platform 602 are primarilydescribed as receiving a rating request in the present disclosure, thesystems and methods described herein are not limited to receiving arating request. It is contemplated that the rating request may beobtained, received, and/or retrieved (e.g., proactively, retroactively,etc.) as a device profile. For example, in an exemplary embodiment adevice profile is obtained (e.g., as part of a rating request, from adatabase, from another data source, etc.). In some embodiments, thedevice profile is received (e.g., as part of a rating request, from auser device, from a database, from another data source, etc.). In otherembodiments, the device profile is retrieved (e.g., as part of a ratingrequest, from a database, from another data source, etc.). In yet otherembodiments, the device profile is autonomously retrieved (e.g.,pulled), retroactively, proactively, or otherwise by components of theratings platform 602 and/or any other suitable data source.

In an exemplary embodiment, the CBO 730 is configured to receive adevice rating request via the communications interface 702. The devicerating request may include desired device input data, a list of possibledevice configurations, and/or any other suitable data relating to deviceconfigurations and/or conditions. For example, the CBO 730 may receive adevice rating request that includes a plurality of attributescharacterizing a device and/or desired device characteristic(s) from thechillers selection tool 712 (e.g., device input data), a list ofpossible device configurations from the CSPS API 714 (e.g., deviceconfiguration data), and/or any other suitable data relating to a deviceconfiguration and/or condition from other external systems or devices(e.g., the ratings platform 602, the storage system 620, components ofthe BMS 400 or BMS 500 via the network 604, etc.).

The CBO 730 may further be configured to translate (e.g., parse, split,divide, process, etc.) the rating request data into a plurality ofdatasets. For example, the CBO 730 may receive a rating request thatincludes a plurality of attributes characterizing a building equipmentdevice, a first device characteristic, a second device characteristic, athird device characteristic, etc. The CBO 730 may translate the ratingrequest data into a first dataset (e.g., the plurality of deviceattributes, etc.), a second dataset (e.g., the first devicecharacteristic, etc.), a third dataset (e.g., the second devicecharacteristic, etc.), a fourth dataset (e.g., the third devicecharacteristic, etc.), etc. In some embodiments, the CBO 730 translatesthe rating request data into another first dataset (e.g., a firstportion of the plurality of device attributes, etc.), another seconddataset (e.g., a second portion of the plurality of device attributes,etc.), another third dataset (e.g., the first device characteristicand/or the second device characteristic), another fourth dataset (e.g.,the third device characteristic), etc. It should be understood that invarious embodiments, the translated rating request data may include anynumber of possible datasets, and the datasets may include anycombination of data included in the rating request.

The CBO 730 may also be configured to translate (e.g., split, process,etc.) the rating request data into datasets and data subsets. Forexample, the CBO 730 may receive a rating request that includes aplurality of attributes characterizing a building equipment device, afirst device characteristic, a second device characteristic, a thirddevice characteristic, etc. The CBO 730 may translate the rating requestdata into a first dataset (e.g., the plurality of device attributes,etc.) that includes a first data subset (e.g., the first devicecharacteristic), and a second dataset (e.g., the second devicecharacteristic). In some embodiments, the CBO 730 translates the ratingrequest into another first dataset (e.g., a first portion of theplurality of device attributes, etc.) that includes another first datasubset (e.g., the third device characteristic), and a second dataset(e.g., a second portion of the plurality of device attributes, etc.)that includes a second data subset (e.g., the second devicecharacteristic). It should be understood that in various embodiments,the translated rating request data may include any number of possibledatasets and/or data subsets, and the datasets and/or data subsets mayinclude any combination of data included in the rating request.

According to an exemplary embodiment, the CBO 730 is also configured todetermine which of a plurality of rating engines is configured todetermine a device rating. According to an exemplary embodiment, the CBO730 receives a rating request, translates the rating request data intodataset(s) and/or data subset(s), and determines (based on thedataset(s) and/or data subset(s)) which of the plurality of ratingengines is configured to determine a rating. In an exemplary embodiment,the CBO 730 is also configured to communicate the appropriate dataset(s)and/or data subset(s) to the appropriate rating engine (e.g., via thechillers rating service 732, a service bus, etc.), as discussed below.

For example, the CBO 730 may receive a rating request that includes aplurality of attributes characterizing a device, a first devicecharacteristic, a second device characteristic, a third devicecharacteristic, etc. The CBO 730 may translate the rating request datainto a first dataset (e.g., the plurality of device attributes, etc.), afirst data subset (e.g., the first device characteristic), a seconddataset (e.g., the second device characteristic), etc., or anycombination thereof. The CBO 730 may determine a first rating engine isconfigured to determine a first rating based on the first dataset and/orthe first data subset (e.g., the plurality of device attributes and/orthe first device characteristic). In some embodiments, the CBO 730 mayalso determine a second rating engine is configured to determine asecond rating based on the first dataset and/or the second dataset(e.g., the plurality of device attributes and/or the second devicecharacteristic). It should be understood that in various embodiments,the translated rating request data may include any number of suitabledatasets and/or data subsets, and based on the dataset(s) and/or datasubset(s), the CBO 730 may determine a rating engine (or pluralitythereof) is/are configured to determine a rating (or plurality thereof).The CBO 730 may then communicate the dataset(s) and/or data subset(s) tothe appropriate rating engine(s) (e.g., the first dataset and/or thefirst data subset to the first rating engine, the second dataset to thesecond rating engine, etc.), as discussed below. In an exemplaryembodiment, the CBO 730 is configured to asynchronously communicate theappropriate dataset(s) and/or data subset(s) to the rating engine(s), inorder for the rating engine(s) to asynchronously process the translatedrating request data to provide device ratings. In some embodiments, theCBO 730 is also configured to communicate the dataset(s) and/or subdataset(s) to the rating engine(s) in series, in order for the ratingengine(s) to process the translated rating request data in series toprovide device ratings.

Still referring to FIG. 7 , the CBO 730 is also shown to communicatewith the chillers rating service 732, the CRC database 734, and/or thechillers rating storage 736. The CRC database 734 can be configured toreceive, store, and send device data, and rating data, in order toprovide a device rating and/or control a device. For example, the CRCdatabase 734 may receive translated rating request data from the CBO 730and/or the chillers rating service 732, and rating data from thechillers rating storage 736. The CRC database 734 can store (e.g.,cache, etc.) the device data and the rating data, for example, for usein subsequent rating requests as discussed below. In some embodiments,the CRC database 734 is searchable (e.g., for device data, rating data,etc.), such that components of the ratings platform 602 (e.g., the CBO730, the chillers rating service 732, etc.) can determine whether devicedata and/or rating data is stored in the CRC database 734. In thisregard, the CRC database 734 may also be configured to send cacheddevice data and/or rating data to other components of the ratingsplatform (e.g., the CBO 730, the chillers rating service 732, etc.), forexample, in subsequent rating requests and/or to control the device. Inthis regard, the CRC database 734 can store and communicate device dataand rating data in order to increase the speed and/or efficiency ofsubsequent rating requests, for example, by replicating a previousrating request and/or providing a foundational dataset for subsequentrequests.

The chillers rating storage 736 can also receive, store, and send devicedata and/or device rating data in order to provide a device ratingand/or control a device. For example, the chillers rating storage 736may receive translated rating request data from the CBO 730, and storethe translated rating request (e.g., in batches, in a batch container744). The chillers rating storage 736 may also receive device ratingsfrom a plurality of rating engines (as discussed below), and store therating data (e.g., in batches, in a ratings container 742). In someembodiments, the chillers rating storage 736 is searchable (e.g., fordevice data, rating data, etc.), such that components of the ratingsplatform 602 (e.g., the CBO 730, the chillers rating service 732, etc.)can determine whether device data and/or rating data is stored in thechillers rating storage 736. In this regard, the chillers rating storage736 may be configured to send device data and/or rating data to othercomponents of the ratings platform 602 (e.g., the chillers ratingservice 732, the CBO 730, etc.), for example, in subsequent ratingrequests and/or to control the device. Similar to the CRC database 734,the chillers rating storage 736 may store and communicate device dataand/or rating data to increase the speed and/or efficiency of subsequentrating requests, for example, by replicating a previous rating requestand/or providing a foundational dataset for subsequent requests.

The chillers rating service 732 may be configured to communicatetranslated rating request data, device rating data, and/or othersuitable device data to other components of the ratings platform 602.According to an exemplary embodiment, the chillers rating service 732receives translated rating request data from the CBO 730, and sends thetranslated rating request data to a rating engine (or a pluralitythereof) via a service bus. In some embodiments, the chillers ratingservice 732 also receives instructions (e.g., a HTTP message, etc.) fromthe CBO 730 that indicate which of the plurality of rating engines isconfigured to determine a device rating. As will be discussed in greaterdetail below, the chillers rating service 732 may receive translatedrating request data and/or instructions from the CBO 730, and send theappropriate datasets and/or data subsets (or a plurality thereof) to theappropriate rating engine (or a plurality thereof) via a service bus.

The chillers rating service 732 can also be configured to communicatewith the CRC database 734 and/or the chillers rating storage 736. In anexemplary embodiment, after the chillers rating service 732 receives thetranslated rating request data, the chillers rating service isconfigured to communicate with the CRC database 734 and/or the chillersrating storage 736 to determine whether the translated rating requestdata, or a portion thereof (e.g., a dataset, a data subset, etc.), isstored in the CRC database 734 and/or the chillers rating storage 736.If the chillers rating service 732 determines the translated ratingrequest data, or a portion thereof, is stored in the CRC database 734and/or the chillers rating storage 736, the chillers rating service 732may receive (e.g., from the CRC database 734, the chillers ratingstorage 736, the ratings container 742, etc.) translated rating requestdata, rating data, and/or other suitable data used to generate a devicerating and/or control a device. However, if the chillers rating service732 determines that the translated rating request data, or a portionthereof, is not stored in the CRC database 734 and/or the chillersrating storage 736, the chillers rating service 732 may communicate thetranslated rating request data to the CRC database 734 and/or thechillers rating storage 736 for storage, as discussed above. Inaddition, if the chillers rating service 732 determines the translatedrating request data, or a portion thereof, is not stored, the chillersrating service 732 may also communicate the appropriate dataset(s)and/or data subset(s) to the appropriate rating engine(s) via thechillers rating service bus 738. Similar to the CBO 730, in an exemplaryembodiment the chillers rating service 732 is configured to communicatethe appropriate dataset(s) and/or data subset(s) to the appropriaterating engine(s) asynchronously (e.g., for asynchronous processing,etc.) and/or in series (e.g., for processing in series, etc.). In thisregard, the chillers rating service 732 may be configured to receivetranslated rating request data, determine if the translated ratingrequest data (or a portion thereof) is stored in the ratings platform602, and receive translated rating request data, rating data, etc. fromcomponents of the ratings platform 602, and/or communicate theappropriate data to the appropriate rating engine(s) for asynchronousand/or in series processing.

Referring still to FIG. 7 , the ratings platform 602 is shown to includea chillers rating service bus 750 (including buses 752-764) and aplurality of rating engines 770-790. In an exemplary embodiment, thechillers rating service 732 may send dataset(s) and/or data subset(s) torating engine(s) 770-790, either directly or via the chillers ratingservice bus 750 (e.g., buses 752-764). In an exemplary embodiment, thechillers rating service 732 is connected with rating engines 770-782 viaseparate buses. For example, the chillers rating service 732 may beconnected with an AECWorks rating engine 770 via an aecworks bus 752, aDXChill ratings engine 772 via a dxchill bus 754, a EcoDesign Calcuatorengine 774 via a ecodesign bus 756, a HiselA ratings engine 776 via ahisela bus 758, a Interpolation ratings engine 778 via an interpolationbus 760, a TWEI ratings engine via a tewi bus 762, and a Xegine ratingsengine 782 via a xengine bus 764. Also in an exemplary embodiment, thechillers rating service 732 is connected with rating engines 786-790(e.g., Armstrong rating engine 786, STC Sound rating engine 788, MStandards Calculator engine 790, etc.) directly via a variety ofcommunications protocols (e.g., HTTP(S), etc.).

The rating engines 770-790 can be configured to receive specifictranslated rating request data (e.g., specific dataset(s), datasubset(s), etc.), and provide a device rating that can be used togenerate a predictive model for a device and/or control the device. Inan exemplary embodiment, the device rating may include, but is notlimited to: overall device configuration, device energy efficiency, costefficiency, device optimization, component parts, component partconfigurations, etc.; device power consumption, performance, soundproduction, flow characteristics, output production, etc.; devicecertifications, specification, regulatory requirements, etc.

As discussed above, the chillers rating service 732 may communicatespecific translated rating request data (e.g., specific dataset(s), datasubset(s), etc.) to rating engine(s) 770-790, directly or via thechillers rating service bus 750, asynchronously, in series, or at anyother suitable interval of time. For example, the chillers ratingservice 732 may asynchronously communicate translated rating requestdata (e.g. from a request, having 25, 50, 100, 500, etc. translateddataset(s), data subset(s), etc.) to the rating engine(s) 770-790. Therating engine(s) 770-790 may receive specific translated rating requestdata, and provide a plurality of device ratings (e.g., 25, 50, 100, 500,etc.) asynchronously. In this regard, the rating engine(s) 770-790 maysimultaneously process (e.g., asynchronously compute, etc.) translatedrating request data, in order to simultaneously provide device ratings.In some embodiments, the chillers rating service 732 may communicatetranslated rating request data to rating engine(s) 770-790 in series.The rating engine(s) 770-790 may receive specific translated ratingrequest data (sometimes in sequence), and provide a plurality of deviceratings in series. In this regard, the rating engine(s) 770-790 may alsoprocess (e.g., compute in series) translated rating request data, inorder to provide device ratings based on sequential computations and/orover a predetermined period of time.

The rating engines 770-790 can also be configured to communicate deviceratings to the chillers rating storage 736 and/or the chillers ratingmappings database 796 for storage. As discussed above, the chillersrating storage 736 may receive rating data from the rating engine(s)770-790, store the rating data (e.g., in the ratings container 742,etc.), and/or further communicate the rating data to other components ofthe ratings platform 602 (e.g., the chillers rating service 732, the CBO730, etc.). The chillers rating mappings database 796 may similarlyreceive rating data from the rating engine(s) 770-790, store the ratingdata, and/or communicate the rating data with other components of theratings platform 602. In this regard, the chillers rating storage 736and/or the chillers rating mappings database 796 can store andcommunicate rating data in order to increase the speed and/or efficiencyof subsequent rating requests, for example, by replicating a previousrating request and/or providing a foundational dataset for subsequentrequests.

Referring now to FIG. 8 , a flow diagram of a process 800 for providinga device rating for a building equipment device is shown, according tosome embodiments. Process 800 may be implemented by the web servicessystem 600 of FIG. 6 and/or the ratings platform 602 of FIGS. 6-7 .Process 800 may also be implemented using the components of FIGS. 1-5 .It should be appreciated that all or part of the process 800 may beimplemented by other systems, devices, and/or components (e.g.,components of the ratings platform 602, the BMS 400, the BMS 500, etc.).It should also be appreciated that certain steps of process 800 may beoptional and, in some embodiments, the process 800 may be implementedusing less than all of the steps.

At step 802, a device profile for a device of building equipment isobtained. As discussed above, it is contemplated that the device profilemay be obtained (e.g., received, retrieved, autonomously retrievedretroactively, proactively, or otherwise, etc.) from any suitable source(e.g., as part of a rating request, from a database, from another datasource). For example, the device profile may be obtained via a userinterface of a user device, such as the chillers selection tool 712 ofthe user device 610. The device profile may also be obtained via an APIof a user device, such as the CSPS API 714 of the user device 610. Insome embodiments, the device profile is obtained from a storage systemand/or a database, for example the storage system 620 and/or thechillers database 722. In other embodiments, the device profile isobtained from components of a building management system, for examplethe BMS controller 366 of the BMS 400 and/or the system manager 502 ofthe BMS 500. In yet other embodiments, the device profile is obtainedvia a combination of a user device (e.g., a user interface, an API,etc.), a storage system, and/or a building management system.

According to an exemplary embodiment, the device profile includes aplurality of attributes characterizing the device of building equipment,including at least a first device characteristic. The plurality ofdevice attributes and/or the first device characteristic may include,but are not limited to: a desired device family, application, powerconsumption, location of use, model, etc.; whether the device includes anoise reduction kit, compressor variation, sensors, etc.; the type ofrefrigerant, coils, fans, etc. of the device; the device's full loadrating standard, conditions, capacity, etc.; the device's evaporatortemperature, flow rate, etc.; the device's condenser ambienttemperature, maximum fan frequency, etc.; and/or other characteristicsrelevant to the device configuration (e.g., cost-efficiency, energyefficiency, altitude or air temperature during use, the size and type ofthe building the device is a component of, etc.). In some embodiments,the first device characteristic is included in the plurality of deviceattributes characterizing the device. In other embodiments, the deviceprofile includes a second device characteristic, a third devicecharacteristic, etc., which are also included in the plurality of deviceattributes characterizing the device.

At step 804, a first rating engine is selected from a plurality ofrating engines. The first rating engine may be selected via a devicebatch orchestrator, such as CBO 730. The first rating engine may also beselected via a device rating service, such as chillers rating service732. In some embodiments, the first rating engine is selected via adevice rating service (e.g., the chillers rating service 732) afterreceiving instructions from a device batch orchestrator (e.g., the CBO730). In other embodiments, the first rating engine is selected viaanother suitable system or device. In yet other embodiments, the firstrating engine is selected based on translated device profile data, asdiscussed below.

According to an exemplary embodiment, the first rating engine isselected from the plurality of rating engines based on the plurality ofattributes characterizing the device of building equipment. After thedevice profile is obtained, the device profile data may be translatedinto dataset(s) and/or data subset(s) via a device batch orchestrator(e.g., the CBO 730), a device rating service (e.g., the chillers ratingservice 732), and/or another suitable system or device. For example, thedevice profile may be translated into a first dataset (e.g., theplurality of device characteristics, etc.), a second dataset (e.g., thefirst device characteristic, etc.), a third dataset (e.g., a seconddevice characteristic, etc.), etc. Similarly, the device profile mayalso be translated into a first dataset (e.g., the plurality of devicecharacteristics, etc.), a first data subset (e.g., the first devicecharacteristic, etc.), a second dataset or second data subset (e.g., asecond device characteristic, etc.), etc. According to an exemplaryembodiment, the first rating engine is selected from the plurality ofrating engines based on the dataset (or data subset) comprising theplurality of attributes characterizing the device of building equipment(e.g. the first dataset, above etc.). In some embodiments, the firstrating engine is selected based on another feature or features (e.g.,dataset(s), data subset(s), etc.), such as a device characteristic, adevice configuration, or other suitable data relating to a deviceconfiguration.

In some embodiments, the device profile data may also be communicated toa database or a storage system to be stored. For example, after thedevice profile is obtained and the device profile data is translatedinto dataset(s) and/or data subset(s), the translated device profiledata may be communicated to a database or a storage system to be stored.A device batch orchestrator (e.g., the CBO 730) may communicate thetranslated device profile data to a database to be stored (e.g.,cached), such as the chillers rating cache database 734. A device batchorchestrator (e.g., the CBO 730) may also communicate the translateddevice profile data to a storage system to be stored (e.g., in batches),such as the batch container 744 of the chillers rating storage 736.Similarly, a device rating service (e.g., the chillers rating service732) may communicate the translated device profile data to a database tobe stored (e.g., cached), such as chillers rating cache database 734,and/or a storage system to be stored (e.g., in batches), such as thebatch container 744 of the chillers rating storage 736.

In some embodiments, a second rating engine is also selected from theplurality of rating engines based on the plurality of attributescharacterizing the device of building equipment. For example, after thedevice profile is obtained and the device profile data is translatedinto dataset(s) and/or data subset(s), a second rating engine isselected from the plurality of rating engines. Similar to the firstrating engine, the second rating engine may be selected via a devicebatch orchestrator (e.g., the CBO 730), a device rating service (e.g.,the chillers rating service 732), and/or another suitable system ordevice. The second rating engine may also be selected from the pluralityof rating engines based on the plurality of attributes characterizingthe device of building equipment (e.g., the first dataset, above, etc.),or other features (e.g., dataset(s), data subset(s), etc.), such as adevice characteristic, a device configuration, or other suitable datarelating to a device configuration.

At step 806, the first device characteristic is communicated to thefirst rating engine. As discussed above, after the device profile isobtained and the device profile data is translated, the dataset(s)and/or data subset(s) comprising the first device characteristic may becommunicated to the first rating engine. The first device characteristicmay be communicated from a device rating service (e.g., the chillersrating service 732) directly to the first rating engine via a variety ofcommunications protocols, such as HTTP(S). The first devicecharacteristic may also be communicated to the first rating engine via aservice bus, such as the chillers rating service bus 750. In someembodiments, the first device characteristic is communicated to thefirst rating engine (e.g., via the chillers rating service bus 750) viaa specific bus (e.g., buses 752-764) connected to the first ratingengine. In other embodiments, another feature other than the firstdevice characteristic is communicated to the first rating engine, forexample, a device configuration, a plurality of device attributes, orother suitable data relating to a device configuration.

In some embodiments, the second device characteristic is alsocommunicated to the second rating engine. Similar to the first devicecharacteristic, the second device characteristic may be communicatedfrom a device rating service (e.g., the chillers rating service 732)directly to the second rating engine, or indirectly via a service bus(e.g., the chillers rating service bus 750 and/or specific buses 752-764connected to the second rating engine). In an exemplary embodiment, thefirst device characteristic is communicated to the first rating engine,and the second device characteristic is communicated to the secondrating engine, asynchronously. In other embodiments, the first devicecharacteristic is communicated to the first rating engine, and thesecond device characteristic is communicated to the second ratingengine, in series.

At step 808, a first rating for the device of building equipment isreceived from the first rating engine. According to an exemplaryembodiment, the first rating engine receives the first devicecharacteristic (e.g., dataset(s), data subset(s), etc.), and determinesa first rating for the device (e.g., based on the plurality of deviceattributes and/or the first device characteristic, etc.). In anexemplary embodiment, the rating may include, but is not limited to:overall device configuration, device energy efficiency, cost efficiency,device optimization, component parts, component part configurations,etc.; device power consumption, performance, sound production, flowcharacteristics, output production, etc.; device certifications,specification, regulatory requirements, etc.

In some embodiments, the first rating engine communicates the firstrating to a storage system and/or database to be stored. The firstrating engine may communicate the first rating to a storage system to bestored (e.g., in batches), such as the ratings container 742 of thechillers rating storage 736. The first rating engine may alsocommunicate the first rating to a database to be stored (e.g., mapped),such as chillers rating mappings database 796.

In some embodiments, the second rating engine also receives the seconddevice characteristic, and determines a second rating (e.g., based onthe plurality of device attributes and/or the second devicecharacteristic). In an exemplary embodiment, the first rating enginedetermines the first rating, and the second rating engine determines thesecond rating, asynchronously. In some embodiments, the first ratingengine determines the first rating, and the second rating enginedetermines the second rating, in series. Like the first rating engine,the second rating engine may communicate the second rating to a storagesystem (e.g., the chillers rating storage 736) and/or a database (e.g.,the chillers rating mappings database 796) to be stored. The secondrating engine may further communicate the second rating to a devicerating service (e.g., the chillers rating service 732) and/or a devicebatch orchestrator (e.g., the CBO 730).

At step 810, the first rating is provided to a user device. According toan exemplary embodiment, once the first rating is received, the firstrating may be communicated to a user device (e.g., the user device 610)via a communications interface (e.g., the communications interface 702).The first rating may be displayed on the user device 610 via a userinterface (e.g., the chillers selection tool 712) and/or an API (e.g.,the CSPS API 714). In an exemplary embodiment, the first rating includesa desirable device configuration, suitable components of the device, adegradation state of components of the device, and/or any other suitabledevice characteristic, for example for use in sales and/or marketing ofthe device. In some embodiments, the second rating is also received, andthe second rating is provided to the user device. Similar to the firstrating, the second rating may be communicated to the user device 610 viathe communications interface 702, and displayed via the chillersselection tool 712 and/or the CSPS API 714. Further, like the firstrating, the second rating may include a desirable device configuration,suitable components of the device, a degradation state of components ofthe device, etc., which may be used in sales and/or marketing of thedevice.

Referring still to FIG. 8 , it should be appreciated that following step810, certain steps of process 800 may be repeated, executed in sequence,and/or implemented using less (or more) than all of the steps of theprocess 800. In this regard, following step 810 a subsequent deviceprofile for a device of building equipment may be obtained, as discussedbelow.

A subsequent device profile may be obtained, for example via a userinterface or API of a user device (e.g., chillers selection tool 712 orCSPS API 714 of user device 610), a storage system (e.g., storage system620), and/or a building management system (e.g., BMS 400, BMS 500,etc.).

A determination may then be made whether the subsequent device profiledata, or a portion thereof, is stored in a database and/or a storagesystem. For example, a device batch orchestrator (e.g., CBO 730) and/ora device rating service (e.g., chillers rating service 732) maycommunicate with a database (e.g., chillers rating cache database 734)and/or a storage system (e.g., chillers rating storage 736), anddetermine whether the subsequent device profile data, or a portionthereof (e.g., a translated device profile dataset, data subset, etc.),is stored in the database and/or storage system.

If it is determined that the subsequent device profile data, or aportion thereof, is stored in the database and/or the storage system,the subsequent device profile data, or a portion thereof, may bereceived from the database and/or the storage system. For example, onceit is determined the subsequent device profile data is stored, a devicebatch orchestrator (e.g., CBO 730) and/or a device rating service (e.g.,chillers rating service 732) may receive the subsequent device profiledata, or a portion thereof (e.g., a translated device profile dataset,data subset, etc.), from the database (e.g., chillers rating cachedatabase 734) and/or a the storage system (e.g., batch container 744 ofthe chillers rating storage 736).

In addition, if it is determined that the subsequent device profiledata, or a portion thereof, is stored, a rating associated with thesubsequent device profile may be received from the database and/orstorage system. For example, a device batch orchestrator (e.g., CBO 730)and/or a device rating service (e.g., chillers rating service 732) mayreceive rating data associated with the subsequent device profile datafrom the database (e.g., chillers rating cache database 734) and/or thestorage system (e.g., ratings container 742 of the chillers ratingstorage 736).

If it is determined that the subsequent device profile data, or aportion thereof, is not stored in the database and/or storage system,the subsequent device profile data, or a portion thereof, may becommunicated to the database and/or the storage system to be stored. Forexample, a device batch orchestrator (e.g., CBO 730) and/or a devicerating service (e.g., chillers rating service 732) may communicate thesubsequent device profile data, or a portion thereof (e.g., a translateddevice profile dataset, data subset, etc.), to a database (e.g.,chillers rating cache database 734) and/or a storage system (e.g., batchcontainer 744 of the chillers rating storage 736) for storage, asdiscussed in step 804.

In addition, if it is determined that the subsequent device profiledata, or a portion thereof, is not stored in the database and/or storagesystem, the subsequent device profile data, or a portion thereof, may becommunicated to a rating engine. For example, a device batchorchestrator (e.g., CBO 730) and/or a device rating service (e.g.,chillers rating service 732) may communicate the subsequent deviceprofile data, or a portion thereof (e.g., a translated device profiledataset, data subset, etc.), to a rating engine (or a pluralitythereof), as discussed in steps 804-806.

As an illustrative example, a user may request a rating for a buildingequipment device. In an exemplary embodiment, the user may provide adevice profile to a ratings platform via a user interface of a userdevice. The device profile may include, for example, desired deviceattributes, characteristics, and/or any other suitable informationrelating to a device configuration. Components of the ratings platformmay obtain the device profile, and communicate the device profile datato databases and/or storage systems for storage. The components of theratings platform may also select, from a plurality of rating engines, afirst rating engine that is configured to determine a first rating, forexample based on the device attributes. The components may thencommunicate a first device characteristic to the first rating engine,and the first rating engine may determine a first rating (e.g., based ondevice attributes, the first characteristic, and/or other data). Thefirst rating may include, for example, a device configuration (e.g.,most cost efficient, most energy efficient, etc.), suitable componentsof the device, a degradation state of components of the device, etc. Thefirst rating may be communicated to other components of the ratingsplatform, and/or the user interface of a user device to be presented tothe user. In an exemplary embodiment, the first rating is communicatedto the user interface to be presented to the user to be used for salesand/or marketing purposes.

In some embodiments, the components of the ratings platform may alsoselect, from the plurality of rating engines, a second rating enginethat is configured to determine a second rating. The components maycommunicate a second device characteristic to the second rating engine,and the second rating engine may determine a second rating (e.g., basedon device attributes, the second characteristic, and/or other data). Asdiscussed above, the first device characteristic and second devicecharacteristic may be communicated to their respective rating engines(i.e., first rating engine, second rating engine) asynchronously or inseries. In this regard, the first rating and the second rating may becommunicated to other components of the ratings platform (or the user)asynchronously or in series.

As another illustrative example, a user may request an additional devicerating for a building equipment device. In an exemplary embodiment, theuser receives a first rating for modeling building equipment, and thenrequests an additional rating. The user may provide the additionaldevice profile to the ratings platform via a user interface of a userdevice, which may include desired device attributes, characteristics,and/or any other suitable information relating to a deviceconfiguration. The components of the ratings platform may obtain theadditional device profile, and communicate with the databases and/orstorage systems to determine whether the additional device profile data(or a portion thereof) is already stored. If it is determined theadditional device profile data (or a portion thereof) is already stored,components of the ratings platform receive the stored device profiledata (or a portion thereof) from the databases and/or storage systems.Similarly, if the databases and/or storage systems have stored ratingdata associated with the additional device profile, components of theratings platform may also receive the rating data. Conversely, if it isdetermined the additional device profile data (or a portion thereof) isnot already stored, the additional device profile data (or a portionthereof) may be communicated to the databases and/or storage systems forstorage, as well as, the appropriate rating engine.

Referring now to FIG. 9 , a flow diagram of a process 900 for modelingand/or controlling a building equipment device is shown, according tosome embodiments. Process 900 may be implemented by the web servicessystem 600 of FIG. 6 and/or the ratings platform 602 of FIGS. 6-7 .Process 900 may also be implemented using the components of FIG. 1-5 .It should be appreciated that all or part of the process 900 may beimplemented by other systems, devices, and/or components (e.g.,components of the ratings platform 602, the BMS 400, the BMS 500, etc.).It should be appreciated that certain steps of process 900 may beoptional, and in some embodiments, the process 900 may be implementedusing less than all of the steps.

At step 902, a device profile for a device of building equipment isobtained. As discussed above with regard to step 802 of FIG. 8 , thedevice profile may be obtained (e.g., received, retrieved, autonomouslyretrieved retroactively, proactively, or otherwise, etc.) from anysuitable source (e.g., as part of a rating request, from a database,from another data source, etc.). For example, the device profile may beobtained via a user interface of a user device (e.g., chillers selectiontool 712), an API (e.g., CSPS API 714), from a storage system (e.g.,storage system 620) or database (e.g., chillers database 722), fromcomponents of a building management system (e.g., BMS controller 366 ofBMS 400, system manager 502 of BMS 500), or a combination thereof. Thedevice profile may include a plurality of attributes characterizing thedevice of building equipment, including at least a first devicecharacteristic. In some embodiments, the plurality of attributescharacterizing the device (e.g., the device profile) also includes asecond device characteristic, a third device characteristic, a fourthdevice characteristic, etc.

At step 904, a first rating engine is selected from a plurality ofrating engines. As discussed above with regard to step 804 of FIG. 8 ,the first rating engine may be selected via a device batch orchestrator(e.g., CBO 730), a device rating service (e.g., chillers rating service732), or a combination thereof. The first rating engine may be selectedfrom the plurality of rating engines based on the plurality ofattributes characterizing the device of building equipment (e.g., adataset or data subset comprising the plurality of attributescharacterizing the device of building equipment). In some embodiments,the device profile (e.g., device profile data) is also communicated to adatabase or storage system to be stored (e.g., chillers rating cachedatabase 734, chillers rating storage 736, etc.). In an exemplaryembodiment, a second rating engine is also selected from the pluralityof rating engines based on the plurality of attributes characterizingthe device of building equipment.

At step 906, the first device characteristic is communicated to thefirst rating engine. As discussed above with regard to step 806 of FIG.8 , the first device characteristic (e.g., dataset or data subsetcomprising the first device characteristic) may be communicated to thefirst rating engine directly, via a service bus (e.g., chillers ratingservice bus 750, buses 752-764), or via another suitable communicationsprotocol. In an exemplary embodiment, the second device characteristicis communicated to the second rating engine. Similar to the first devicecharacteristic, the second device characteristic may be communicated tothe second rating engine directly, via a service bus, or via anothersuitable communications protocol. In an exemplary embodiment, the firstdevice characteristic is communicated to the first rating engine, andthe second device characteristic is communicated to the second ratingengine, asynchronously. In other embodiments, the first devicecharacteristic is communicated to the first rating engine, and thesecond device characteristic is communicated to the second ratingengine, in series.

At step 908, a first rating for the device of building equipment isreceived from the first rating engine. As discussed above with regard tostep 808 of FIG. 8 , the first rating engine may receive the firstdevice characteristic, and determine a first rating for the device. Insome embodiments, the first rating engine communicates the first ratingto a storage system and/or database to be stored (e.g., chillers ratingstorage 736, chillers rating mappings database 796, etc.), a devicerating service (e.g., chillers rating service 732), a device batchorchestrator (e.g., CBO 730), a user device to be displayed via a userinterface and/or an API (e.g., chillers selection tool 712, CSPS API714, etc.), and/or any other suitable device. In some embodiments, thesecond rating engine also receives the second device characteristic, anddetermines a second rating. In an exemplary embodiment, the first ratingengine determines the first rating, and the second rating enginedetermines the second rating, asynchronously. In some embodiments, thefirst rating engine determines the first rating, and the second ratingengine determines the second rating, in series. Like the first ratingengine, the second rating engine may communicate the second rating toany suitable component and/or device, as discussed above.

At step 910, at least one of a predictive model for the device isgenerated or the device is controlled using the first rating. Once thefirst rating is received, a predictive model for the device may begenerated by a device rating service (e.g., chillers rating service732), a device batch orchestrator (e.g., CBO 730), and/or another systemor device. In an exemplary embodiment, the predictive model for thedevice is configured to be communicated to external systems of devices(e.g., the user device 610, the storage system 620, the BMs 400, the BMS500, etc.). In some embodiments, the predictive model for the device isconfigured to include a desirable device configuration, suitablecomponents of the device, and/or a degradation state of components ofthe device, which may be used, for example, in sales and/or marketing ofthe device. In other embodiments, the first rating is also used tocontrol the building equipment device. For example, the first rating maybe used to control components of a building management system, such asBMS controller 366 of the BMS 400 and/or the system manager 502 of theBMS 500, in order to control the building equipment device.

In some embodiments, the second rating is also received, and at leastone of a predictive model for the device is generated or the device iscontrolled using the second rating. The predictive model for the devicemay be generated by a device rating service (e.g., the chillers ratingservice 732), a device batch orchestrator (e.g., the CBO 730), and/oranother system or device. In some embodiments, the predictive modelincorporates both the first rating and the second rating. According toan exemplary embodiment, the second rating is also used to control thebuilding equipment device. For example, the second rating may be used tocontrol components of a building management system (e.g., the BMScontroller 366 of the BMS 400 and/or the system manager 502 of the BMS500), in order to control the building equipment device.

Referring still to FIG. 9 , and as discussed above with regard toprocess 800 of FIG. 8 , it should be appreciated that following step910, certain steps of process 900 may be repeated, executed in sequence,and/or implemented using less (or more) than all of the steps of theprocess 900. In this regard, following step 910 a subsequent ratingrequest for a device (e.g., a subsequent device profile) of buildingequipment may be obtained, as discussed above.

As an illustrative example, a building management system may request adevice rating for controlling a building equipment device. In anexemplary embodiment, a building management system may provide a deviceprofile to a ratings platform via a network. The device profile mayinclude, for example, device attributes, characteristics, and/or anyother suitable information relating to a device configuration.Components of the ratings platform may obtain the device profile, andcommunicate the device profile data to databases and/or storage systemsfor storage. (Or, alternatively, determine the device profile data isstored, and receive the stored device profile data.) The components ofthe ratings platform may select, from a plurality of rating engines, anappropriate rating engine to determine a desired rating, communicate theappropriate device profile data to the appropriate rating engine, andreceive a rating (as discussed above). In some embodiments, thecomponents of the ratings platform are configured to generate apredictive model based on the rating. In an exemplary embodiment, thecomponents of the ratings platform further communicate the rating(and/or the predictive model) to components of a building managementsystem, in order to control the building equipment device.

Configuration of Exemplary Embodiments

The construction and arrangement of the systems and methods as shown inthe various exemplary embodiments are illustrative only. Although only afew embodiments have been described in detail in this disclosure, manymodifications are possible (e.g., variations in sizes, dimensions,structures, shapes and proportions of the various elements, values ofparameters, mounting arrangements, use of materials, colors,orientations, etc.). For example, the position of elements can bereversed or otherwise varied and the nature or number of discreteelements or positions can be altered or varied. Accordingly, all suchmodifications are intended to be included within the scope of thepresent disclosure. The order or sequence of any process or method stepscan be varied or re-sequenced according to alternative embodiments.Other substitutions, modifications, changes, and omissions can be madein the design, operating conditions and arrangement of the exemplaryembodiments without departing from the scope of the present disclosure.

The present disclosure contemplates methods, systems and programproducts on any machine-readable media for accomplishing variousoperations. The embodiments of the present disclosure can be implementedusing existing computer processors, or by a special purpose computerprocessor for an appropriate system, incorporated for this or anotherpurpose, or by a hardwired system. Embodiments within the scope of thepresent disclosure include program products comprising machine-readablemedia for carrying or having machine-executable instructions or datastructures stored thereon. Such machine-readable media can be anyavailable media that can be accessed by a general purpose or specialpurpose computer or other machine with a processor. By way of example,such machine-readable media can comprise RAM, ROM, EPROM, EEPROM, CD-ROMor other optical disk storage, magnetic disk storage or other magneticstorage devices, or any other medium which can be used to carry or storedesired program code in the form of machine-executable instructions ordata structures and which can be accessed by a general purpose orspecial purpose computer or other machine with a processor. Combinationsof the above are also included within the scope of machine-readablemedia. Machine-executable instructions include, for example,instructions and data which cause a general purpose computer, specialpurpose computer, or special purpose processing machines to perform acertain function or group of functions.

Although the figures show a specific order of method steps, the order ofthe steps may differ from what is depicted. Also two or more steps canbe performed concurrently or with partial concurrence. Such variationwill depend on the software and hardware systems chosen and on designerchoice. All such variations are within the scope of the disclosure.Likewise, software implementations could be accomplished with standardprogramming techniques with rule based logic and other logic toaccomplish the various connection steps, processing steps, comparisonsteps and decision steps.

In various implementations, the steps and operations described hereinmay be performed on one processor or in a combination of two or moreprocessors. For example, in some implementations, the various operationscould be performed in a central server or set of central serversconfigured to receive data from one or more devices (e.g., edgecomputing devices/controllers) and perform the operations. In someimplementations, the operations may be performed by one or more localcontrollers or computing devices (e.g., edge devices), such ascontrollers dedicated to and/or located within a particular building orportion of a building. In some implementations, the operations may beperformed by a combination of one or more central or offsite computingdevices/servers and one or more local controllers/computing devices. Allsuch implementations are contemplated within the scope of the presentdisclosure. Further, unless otherwise indicated, when the presentdisclosure refers to one or more computer-readable storage media and/orone or more controllers, such computer-readable storage media and/or oneor more controllers may be implemented as one or more central servers,one or more local controllers or computing devices (e.g., edge devices),any combination thereof, or any other combination of storage mediaand/or controllers regardless of the location of such devices.

What is claimed is:
 1. A system for modeling and controlling buildingequipment, the system comprising: one or more memory devices havinginstructions stored thereon that, when executed by one or moreprocessors, cause the one or more processors to perform operationscomprising: obtaining a device profile for a device of buildingequipment, the device profile including a plurality of attributescharacterizing the device of building equipment including at least afirst device characteristic; selecting, from a plurality of ratingengines, a first rating engine for use in generating the rating based onthe plurality of attributes characterizing the device of buildingequipment; communicating the first device characteristic to the firstrating engine; receiving a first rating for the device of buildingequipment from the first rating engine; and using the first rating tocontrol the device of building equipment.
 2. The system of claim 1, theoperations further comprising: obtaining the device profile for thedevice of building equipment, the device profile including a seconddevice characteristic; selecting, from the plurality of rating engines,a second rating engine for use in generating a second rating based onthe plurality of attributes characterizing the device of buildingequipment; communicating the second device characteristic to the secondrating engine; receiving the second rating for the device of buildingequipment from the second rating engine; and using the second rating tocontrol the device of building equipment.
 3. The system of claim 2,wherein communicating the first device characteristic to the firstrating engine and the second device characteristic to the second ratingengine occurs asynchronously, and wherein the first rating engine andthe second rating engine are different rating engines.
 4. The system ofclaim 2, wherein communicating the first device characteristic to thefirst rating engine and the second device characteristic to the secondrating engine occurs in series, and wherein the first rating engine andthe second rating engine are the same rating engine.
 5. The system ofclaim 1, the operations further comprising communicating the firstrating to a device ratings database, wherein the device ratings databaseis configured to store a plurality of ratings.
 6. The system of claim 1,the operations further comprising communicating the plurality ofattributes characterizing the device of building equipment and the firstdevice characteristic to a database, wherein the database is configuredto store the plurality of attributes characterizing the device ofbuilding equipment and a plurality of device characteristics.
 7. Thesystem of claim 1, wherein the device profile includes a third devicecharacteristic, and wherein the operations further comprise: determiningthe third device characteristic is stored in a database; and receiving,from the database, a third device rating based on the third devicecharacteristic.
 8. The system of claim 1, wherein the plurality ofattributes characterizing the device of building equipment comprises atleast one of a device family type, a device location, or a deviceconfiguration.
 9. The system of claim 1, wherein the first ratingcomprises at least one of a device power consumption, a deviceperformance metric, or a device flow metric.
 10. The system of claim 1,the operations further comprising providing the first rating to a uservia a user interface.
 11. A method for modeling and controlling buildingequipment, the method comprising: obtaining a device profile for adevice of building equipment, the device profile including a pluralityof attributes characterizing the device of building equipment includingat least a first device characteristic; selecting, from a plurality ofrating engines, a first rating engine for use in generating the ratingbased on the plurality of attributes characterizing the device ofbuilding equipment; communicating the first device characteristic to thefirst rating engine; receiving a first rating for the device of buildingequipment from the first rating engine; and using the first rating tocontrol the device of building equipment.
 12. The method of claim 11,the method further comprising: obtaining the device profile for thedevice of building equipment, the device profile including a seconddevice characteristic; selecting, from the plurality of rating engines,a second rating engine for use in generating a second rating based onthe plurality of attributes characterizing the device of buildingequipment; communicating the second device characteristic to the secondrating engine; receiving the second rating for the device of buildingequipment from the second rating engine; and using the second rating tocontrol the device of building equipment.
 13. The method of claim 12,further comprising communicating the first device characteristic to thefirst rating engine and the second device characteristic to the secondrating engine asynchronously, wherein the first rating engine and thesecond rating engine are different rating engines.
 14. The method ofclaim 12, further comprising communicating the first devicecharacteristic to the first rating engine and the second devicecharacteristic to the second rating engine occurs in series, wherein thefirst rating engine and the second rating engine are the same ratingengine.
 15. The method of claim 11, further comprising communicating thefirst rating to a device ratings database, wherein the device ratingsdatabase is configured to store a plurality of ratings.
 16. The methodof claim 11, further comprising communicating the plurality ofattributes characterizing the device of building equipment and the firstdevice characteristic to a database, wherein the database is configuredto store the plurality of attributes characterizing the device ofbuilding equipment and a plurality of device characteristics.
 17. Themethod of claim 11, further comprising: determining a third devicecharacteristic is stored in a database; and receiving, from thedatabase, a third device rating based on the third devicecharacteristic, wherein the device profile includes the third devicecharacteristic.
 18. The method of claim 11, further comprising providingthe first rating to a user via a user interface.
 19. A non-transitorycomputer readable medium comprising instructions stored thereon that,when executed by one or more processors, cause the one or moreprocessors to: obtain a device profile for a device of buildingequipment, the device profile including a plurality of attributescharacterizing the device of building equipment including at least afirst device characteristic; select, from a plurality of rating engines,a first rating engine for use in generating the rating based on theplurality of attributes characterizing the device of building equipment;communicate the first device characteristic to the first rating engine;receive a first rating for the device of building equipment from thefirst rating engine; and use the first rating to control the device ofbuilding equipment.
 20. The non-transitory computer readable medium ofclaim 19, the instructions further causing the one or more processorsto: obtain the device profile for the device of building equipment, thedevice profile including a second device characteristic; select, fromthe plurality of rating engines, a second rating engine for use ingenerating a second rating based on the plurality of attributescharacterizing the device of building equipment; communicate the seconddevice characteristic to the second rating engine; receive the secondrating for the device of building equipment from the second ratingengine; and use the second rating to control the device of buildingequipment.